diff --git a/Dotnet/AppApi/Cef/AppApiCef.cs b/Dotnet/AppApi/Cef/AppApiCef.cs index 50e64eae..3bf360c6 100644 --- a/Dotnet/AppApi/Cef/AppApiCef.cs +++ b/Dotnet/AppApi/Cef/AppApiCef.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Collections.Generic; using System.Collections.Specialized; @@ -216,7 +210,7 @@ namespace VRCX using var client = MainForm.Instance.Browser.GetDevToolsClient(); _ = client.Network.SetUserAgentOverrideAsync(Program.Version); } - + public override void SetTrayIconNotification(bool notify) { MainForm.Instance.BeginInvoke(new MethodInvoker(() => { MainForm.Instance.SetTrayIconNotification(notify); })); diff --git a/Dotnet/AssetBundleManager.cs b/Dotnet/AssetBundleManager.cs index 2aa61089..56f9fcd6 100644 --- a/Dotnet/AssetBundleManager.cs +++ b/Dotnet/AssetBundleManager.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Collections.Generic; using System.Diagnostics; diff --git a/Dotnet/Cef/CefCustomDownloadHandler.cs b/Dotnet/Cef/CefCustomDownloadHandler.cs index 0a1293dc..2a2186e5 100644 --- a/Dotnet/Cef/CefCustomDownloadHandler.cs +++ b/Dotnet/Cef/CefCustomDownloadHandler.cs @@ -1,10 +1,4 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - -using CefSharp; +using CefSharp; namespace VRCX { diff --git a/Dotnet/Cef/CefCustomMenuHandler.cs b/Dotnet/Cef/CefCustomMenuHandler.cs index bca07ee7..f1c65139 100644 --- a/Dotnet/Cef/CefCustomMenuHandler.cs +++ b/Dotnet/Cef/CefCustomMenuHandler.cs @@ -1,9 +1,4 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - -using CefSharp; +using CefSharp; namespace VRCX { diff --git a/Dotnet/Cef/CefCustomRequestHandler.cs b/Dotnet/Cef/CefCustomRequestHandler.cs index a10ba1fb..5ab03cc8 100644 --- a/Dotnet/Cef/CefCustomRequestHandler.cs +++ b/Dotnet/Cef/CefCustomRequestHandler.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System.Security.Cryptography.X509Certificates; using CefSharp; using NLog; @@ -13,14 +7,14 @@ namespace VRCX public class CustomRequestHandler : IRequestHandler { private readonly Logger _logger = LogManager.GetCurrentClassLogger(); - + public bool OnBeforeBrowse(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, bool userGesture, bool isRedirect) { if (Program.LaunchDebug || request.Url.StartsWith("file://vrcx/") || request.Url.StartsWith("chrome-extension://")) return false; - + _logger.Error("Blocking navigation to: {Url}", request.Url); return true; } diff --git a/Dotnet/Cef/CefNoopDragHandler.cs b/Dotnet/Cef/CefNoopDragHandler.cs index 7fd27573..14cd7800 100644 --- a/Dotnet/Cef/CefNoopDragHandler.cs +++ b/Dotnet/Cef/CefNoopDragHandler.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System.Collections.Generic; using CefSharp; using CefSharp.Enums; diff --git a/Dotnet/Cef/MainForm.Designer.cs b/Dotnet/Cef/MainForm.Designer.cs index 7177ba39..c96c9f0f 100644 --- a/Dotnet/Cef/MainForm.Designer.cs +++ b/Dotnet/Cef/MainForm.Designer.cs @@ -1,9 +1,4 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - -using System; +using System; using System.ComponentModel; using System.Drawing; using System.Windows.Forms; diff --git a/Dotnet/Cef/MainForm.cs b/Dotnet/Cef/MainForm.cs index cf198eec..aa00b7b1 100644 --- a/Dotnet/Cef/MainForm.cs +++ b/Dotnet/Cef/MainForm.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Diagnostics.CodeAnalysis; using System.Drawing; @@ -243,7 +237,7 @@ namespace VRCX { Instance.Browser.ShowDevTools(); } - + private void TrayMenu_ForceCrash_Click(object sender, System.EventArgs e) { Instance.Browser.LoadUrl("chrome://crash"); diff --git a/Dotnet/Discord.cs b/Dotnet/Discord.cs index d81f9693..a4a65f68 100644 --- a/Dotnet/Discord.cs +++ b/Dotnet/Discord.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using DiscordRPC; using System.Text; @@ -135,21 +129,21 @@ namespace VRCX } return Encoding.UTF8.GetString(bytesArr, 0, bytesArr.Length - bytesToRemove); } - + public void SetAssets( string details, string state, string detailsUrl, - + string largeKey, string largeText, - + string smallKey, string smallText, - + double startUnixMilliseconds, double endUnixMilliseconds, - + string partyId, int partySize, int partyMax, @@ -171,21 +165,21 @@ namespace VRCX _lock.ExitWriteLock(); return; } - + _presence.Details = LimitByteLength(details, 127); _presence.DetailsUrl = !string.IsNullOrEmpty(detailsUrl) ? detailsUrl : null; // _presence.StateUrl _presence.State = LimitByteLength(state, 127); _presence.Assets ??= new Assets(); - + _presence.Assets.LargeImageKey = largeKey; _presence.Assets.LargeImageText = largeText; _presence.Assets.LargeImageUrl = VrcxUrl; - + _presence.Assets.SmallImageKey = smallKey; _presence.Assets.SmallImageText = smallText; // m_Presence.Assets.SmallImageUrl - + if (startUnixMilliseconds == 0) { _presence.Timestamps = null; @@ -214,7 +208,7 @@ namespace VRCX _presence.Type = (ActivityType)activityType; _presence.StatusDisplay = (StatusDisplayType)statusDisplayType; - + Button[] buttons = []; if (!string.IsNullOrEmpty(buttonUrl)) { @@ -224,7 +218,7 @@ namespace VRCX ]; } _presence.Buttons = buttons; - + if (_discordAppId != appId) { _discordAppId = appId; diff --git a/Dotnet/IPC/IPCClient.cs b/Dotnet/IPC/IPCClient.cs index ebd9f69d..3a13c458 100644 --- a/Dotnet/IPC/IPCClient.cs +++ b/Dotnet/IPC/IPCClient.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Globalization; using System.IO; diff --git a/Dotnet/IPC/IPCServer.cs b/Dotnet/IPC/IPCServer.cs index f3df56cf..fabd8d3b 100644 --- a/Dotnet/IPC/IPCServer.cs +++ b/Dotnet/IPC/IPCServer.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Collections.Concurrent; using System.Collections.Generic; diff --git a/Dotnet/JsonFileSerializer.cs b/Dotnet/JsonFileSerializer.cs index 5be564ee..30f68953 100644 --- a/Dotnet/JsonFileSerializer.cs +++ b/Dotnet/JsonFileSerializer.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using Newtonsoft.Json; using System.IO; using System.Text; diff --git a/Dotnet/LogWatcher.cs b/Dotnet/LogWatcher.cs index d9136cf8..ee45c7d5 100644 --- a/Dotnet/LogWatcher.cs +++ b/Dotnet/LogWatcher.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Collections.Concurrent; using System.Collections.Generic; diff --git a/Dotnet/Overlay/Cef/OffScreenBrowser.cs b/Dotnet/Overlay/Cef/OffScreenBrowser.cs index 2e45af18..e272fff3 100644 --- a/Dotnet/Overlay/Cef/OffScreenBrowser.cs +++ b/Dotnet/Overlay/Cef/OffScreenBrowser.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using CefSharp; using CefSharp.Enums; using CefSharp.OffScreen; @@ -100,22 +94,22 @@ namespace VRCX { if ((IntPtr)_device1.Handle == IntPtr.Zero) return; - + if ((IntPtr)_deviceContext.Handle == IntPtr.Zero) return; - + if ((IntPtr)_query.Handle == IntPtr.Zero) return; - + if ((IntPtr)_renderTarget.Handle == IntPtr.Zero) return; - + using ComPtr cefTexture = _device1.OpenSharedResource1(paintInfo.SharedTextureHandle.ToPointer()); _deviceContext.CopyResource(_renderTarget, cefTexture); _deviceContext.End(_query); _deviceContext.Flush(); - + while (_deviceContext.GetData(_query, IntPtr.Zero.ToPointer(), 0, 0) == 1) { Thread.Yield(); diff --git a/Dotnet/Overlay/Cef/OffScreenBrowserLegacy.cs b/Dotnet/Overlay/Cef/OffScreenBrowserLegacy.cs index 64c388b1..8447aeed 100644 --- a/Dotnet/Overlay/Cef/OffScreenBrowserLegacy.cs +++ b/Dotnet/Overlay/Cef/OffScreenBrowserLegacy.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using CefSharp; using CefSharp.Enums; using CefSharp.OffScreen; diff --git a/Dotnet/Overlay/Cef/SystemMonitorCef.cs b/Dotnet/Overlay/Cef/SystemMonitorCef.cs index 98d40b27..ec2a9014 100644 --- a/Dotnet/Overlay/Cef/SystemMonitorCef.cs +++ b/Dotnet/Overlay/Cef/SystemMonitorCef.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Diagnostics; using System.Threading; diff --git a/Dotnet/Overlay/Cef/VRCXVRCef.cs b/Dotnet/Overlay/Cef/VRCXVRCef.cs index 350adc89..10667f13 100644 --- a/Dotnet/Overlay/Cef/VRCXVRCef.cs +++ b/Dotnet/Overlay/Cef/VRCXVRCef.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Collections.Concurrent; using System.Collections.Generic; @@ -33,7 +27,7 @@ namespace VRCX private static readonly float[] _rotationRight = { -90f * (float)(Math.PI / 180f), -90f * (float)(Math.PI / 180f), -90f * (float)(Math.PI / 180f) }; private static OffScreenBrowser _wristOverlay; private static OffScreenBrowser _hmdOverlay; - + private readonly List _deviceList; private readonly ReaderWriterLockSlim _deviceListLock; private bool _active; diff --git a/Dotnet/Overlay/Cef/VRCXVRLegacy.cs b/Dotnet/Overlay/Cef/VRCXVRLegacy.cs index f14896cd..4f23c768 100644 --- a/Dotnet/Overlay/Cef/VRCXVRLegacy.cs +++ b/Dotnet/Overlay/Cef/VRCXVRLegacy.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Collections.Concurrent; using System.Collections.Generic; @@ -33,7 +27,7 @@ namespace VRCX private static readonly float[] _rotationRight = { -90f * (float)(Math.PI / 180f), -90f * (float)(Math.PI / 180f), -90f * (float)(Math.PI / 180f) }; private static OffScreenBrowserLegacy _wristOverlay; private static OffScreenBrowserLegacy _hmdOverlay; - + private readonly List _deviceList; private readonly ReaderWriterLockSlim _deviceListLock; private bool _active; @@ -43,7 +37,7 @@ namespace VRCX private Thread _thread; private bool _wristOverlayActive; private DateTime _nextOverlayUpdate; - + private DXGI _dxgi; private D3D11 _d3d11; private ComPtr _factory; diff --git a/Dotnet/Overlay/Cef/VRForm.Designer.cs b/Dotnet/Overlay/Cef/VRForm.Designer.cs index b3c12261..3da4f40f 100644 --- a/Dotnet/Overlay/Cef/VRForm.Designer.cs +++ b/Dotnet/Overlay/Cef/VRForm.Designer.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - namespace VRCX { partial class VRForm diff --git a/Dotnet/Overlay/Cef/VRForm.cs b/Dotnet/Overlay/Cef/VRForm.cs index 2f467090..c62043e3 100644 --- a/Dotnet/Overlay/Cef/VRForm.cs +++ b/Dotnet/Overlay/Cef/VRForm.cs @@ -1,9 +1,4 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - -using System.IO; +using System.IO; using System.Windows.Forms; using CefSharp; using CefSharp.WinForms; diff --git a/Dotnet/Overlay/Electron/SystemMonitorElectron.cs b/Dotnet/Overlay/Electron/SystemMonitorElectron.cs index 8aa0bbbb..dc7e7e4f 100644 --- a/Dotnet/Overlay/Electron/SystemMonitorElectron.cs +++ b/Dotnet/Overlay/Electron/SystemMonitorElectron.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.IO; using System.Threading; diff --git a/Dotnet/Overlay/Electron/VRCXVRElectron.cs b/Dotnet/Overlay/Electron/VRCXVRElectron.cs index 01e603b3..6db7f1d5 100644 --- a/Dotnet/Overlay/Electron/VRCXVRElectron.cs +++ b/Dotnet/Overlay/Electron/VRCXVRElectron.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Collections.Concurrent; using System.Collections.Generic; diff --git a/Dotnet/Program.cs b/Dotnet/Program.cs index 58ab3e05..24bd0090 100644 --- a/Dotnet/Program.cs +++ b/Dotnet/Program.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using NLog; using NLog.Targets; using System; diff --git a/Dotnet/StartupArgs.cs b/Dotnet/StartupArgs.cs index 9d9d29a3..d9fb1f56 100644 --- a/Dotnet/StartupArgs.cs +++ b/Dotnet/StartupArgs.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Diagnostics; using System.IO; @@ -74,7 +68,7 @@ namespace VRCX { if (arg == VrcxLaunchArguments.IsStartupPrefix) arguments.IsStartup = true; - + if (arg == VrcxLaunchArguments.IsUpgradePrefix) arguments.IsUpgrade = true; @@ -83,7 +77,7 @@ namespace VRCX if (arg.StartsWith(VrcxLaunchArguments.LaunchCommandPrefix) && arg.Length > VrcxLaunchArguments.LaunchCommandPrefix.Length) arguments.LaunchCommand = arg.Substring(VrcxLaunchArguments.LaunchCommandPrefix.Length); - + if (arg.StartsWith(VrcxLaunchArguments.LinuxLaunchCommandPrefix) && arg.Length > VrcxLaunchArguments.LinuxLaunchCommandPrefix.Length) arguments.LaunchCommand = arg.Substring(VrcxLaunchArguments.LinuxLaunchCommandPrefix.Length); @@ -100,7 +94,7 @@ namespace VRCX { public const string IsStartupPrefix = "--startup"; public bool IsStartup { get; set; } = false; - + public const string IsUpgradePrefix = "/Upgrade"; public bool IsUpgrade { get; set; } = false; diff --git a/Dotnet/Update.cs b/Dotnet/Update.cs index 735aa207..0936452a 100644 --- a/Dotnet/Update.cs +++ b/Dotnet/Update.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using System; using System.Collections.Generic; using System.IO; @@ -56,7 +50,7 @@ namespace VRCX { if (Process.GetProcessesByName("VRCX_Setup").Length > 0) Environment.Exit(0); - + if (File.Exists(TempDownload)) File.Delete(TempDownload); if (File.Exists(VrcxSetupExecutable)) @@ -194,7 +188,7 @@ namespace VRCX await destination.WriteAsync(buffer.AsMemory(0, bytesRead), _cancellationToken); totalBytesRead += bytesRead; } - + destination.Close(); var data = new FileInfo(TempDownload); diff --git a/Dotnet/WinApi.cs b/Dotnet/WinApi.cs index 53233f86..d10ef80c 100644 --- a/Dotnet/WinApi.cs +++ b/Dotnet/WinApi.cs @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - using Microsoft.Win32; using System; using System.Collections.Generic; diff --git a/LICENSE b/LICENSE index 7f96fed6..d0001401 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2019-2025 pypy and individual contributors. +Copyright (c) 2019-2026 pypy and individual contributors. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/src/app.css b/src/app.css index d1b1a94b..68161f65 100644 --- a/src/app.css +++ b/src/app.css @@ -1,11 +1,3 @@ -/* -/* Copyright(c) 2019-2025 pypy and individual contributors. -/* All rights reserved. -/* -/* This work is licensed under the terms of the MIT license. -/* For a copy, see . -*/ - @import 'element-plus/dist/index.css'; @import 'element-plus/theme-chalk/dark/css-vars.css'; diff --git a/src/app.js b/src/app.js index d99649cb..282a7af8 100644 --- a/src/app.js +++ b/src/app.js @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - import { createApp } from 'vue'; import ElementPlus from 'element-plus'; diff --git a/src/views/Login/Login.vue b/src/views/Login/Login.vue index 3df9af51..be6fa439 100644 --- a/src/views/Login/Login.vue +++ b/src/views/Login/Login.vue @@ -133,7 +133,7 @@ }}

- © 2019-2025 + © 2019-2026 pypy & Natsumi

diff --git a/src/views/Settings/components/Tabs/GeneralTab.vue b/src/views/Settings/components/Tabs/GeneralTab.vue index 1022a312..9857fab1 100644 --- a/src/views/Settings/components/Tabs/GeneralTab.vue +++ b/src/views/Settings/components/Tabs/GeneralTab.vue @@ -282,7 +282,7 @@ {{ t('view.settings.general.legal_notice.header') }}

- © 2019-2025 + © 2019-2026 pypy & Natsumi

diff --git a/src/vr/vr.css b/src/vr/vr.css index 872b760c..56ad0fce 100644 --- a/src/vr/vr.css +++ b/src/vr/vr.css @@ -1,11 +1,3 @@ -/* -/* Copyright(c) 2019-2025 pypy and individual contributors. -/* All rights reserved. -/* -/* This work is licensed under the terms of the MIT license. -/* For a copy, see . -*/ - @import 'tailwindcss'; @import 'animate.css/animate.min.css'; diff --git a/src/vr/vr.js b/src/vr/vr.js index 868db5d2..2a7e7b03 100644 --- a/src/vr/vr.js +++ b/src/vr/vr.js @@ -1,9 +1,3 @@ -// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors. -// All rights reserved. -// -// This work is licensed under the terms of the MIT license. -// For a copy, see . - import { createApp } from 'vue'; import { i18n } from '../plugin/i18n';