mirror of
https://github.com/MrUnknownDE/VRCX.git
synced 2026-05-06 22:46:06 +02:00
Update year
This commit is contained in:
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Collections.Specialized;
|
using System.Collections.Specialized;
|
||||||
@@ -216,7 +210,7 @@ namespace VRCX
|
|||||||
using var client = MainForm.Instance.Browser.GetDevToolsClient();
|
using var client = MainForm.Instance.Browser.GetDevToolsClient();
|
||||||
_ = client.Network.SetUserAgentOverrideAsync(Program.Version);
|
_ = client.Network.SetUserAgentOverrideAsync(Program.Version);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void SetTrayIconNotification(bool notify)
|
public override void SetTrayIconNotification(bool notify)
|
||||||
{
|
{
|
||||||
MainForm.Instance.BeginInvoke(new MethodInvoker(() => { MainForm.Instance.SetTrayIconNotification(notify); }));
|
MainForm.Instance.BeginInvoke(new MethodInvoker(() => { MainForm.Instance.SetTrayIconNotification(notify); }));
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
|
|||||||
@@ -1,10 +1,4 @@
|
|||||||
// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors.
|
using CefSharp;
|
||||||
// All rights reserved.
|
|
||||||
//
|
|
||||||
// This work is licensed under the terms of the MIT license.
|
|
||||||
// For a copy, see <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using CefSharp;
|
|
||||||
|
|
||||||
namespace VRCX
|
namespace VRCX
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,9 +1,4 @@
|
|||||||
// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors.
|
using CefSharp;
|
||||||
//
|
|
||||||
// This work is licensed under the terms of the MIT license.
|
|
||||||
// For a copy, see <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using CefSharp;
|
|
||||||
|
|
||||||
namespace VRCX
|
namespace VRCX
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System.Security.Cryptography.X509Certificates;
|
using System.Security.Cryptography.X509Certificates;
|
||||||
using CefSharp;
|
using CefSharp;
|
||||||
using NLog;
|
using NLog;
|
||||||
@@ -13,14 +7,14 @@ namespace VRCX
|
|||||||
public class CustomRequestHandler : IRequestHandler
|
public class CustomRequestHandler : IRequestHandler
|
||||||
{
|
{
|
||||||
private readonly Logger _logger = LogManager.GetCurrentClassLogger();
|
private readonly Logger _logger = LogManager.GetCurrentClassLogger();
|
||||||
|
|
||||||
public bool OnBeforeBrowse(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, bool userGesture, bool isRedirect)
|
public bool OnBeforeBrowse(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, bool userGesture, bool isRedirect)
|
||||||
{
|
{
|
||||||
if (Program.LaunchDebug ||
|
if (Program.LaunchDebug ||
|
||||||
request.Url.StartsWith("file://vrcx/") ||
|
request.Url.StartsWith("file://vrcx/") ||
|
||||||
request.Url.StartsWith("chrome-extension://"))
|
request.Url.StartsWith("chrome-extension://"))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
_logger.Error("Blocking navigation to: {Url}", request.Url);
|
_logger.Error("Blocking navigation to: {Url}", request.Url);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using CefSharp;
|
using CefSharp;
|
||||||
using CefSharp.Enums;
|
using CefSharp.Enums;
|
||||||
|
|||||||
Generated
+1
-6
@@ -1,9 +1,4 @@
|
|||||||
// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors.
|
using System;
|
||||||
//
|
|
||||||
// This work is licensed under the terms of the MIT license.
|
|
||||||
// For a copy, see <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
|
||||||
using System.ComponentModel;
|
using System.ComponentModel;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Diagnostics.CodeAnalysis;
|
using System.Diagnostics.CodeAnalysis;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
@@ -243,7 +237,7 @@ namespace VRCX
|
|||||||
{
|
{
|
||||||
Instance.Browser.ShowDevTools();
|
Instance.Browser.ShowDevTools();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void TrayMenu_ForceCrash_Click(object sender, System.EventArgs e)
|
private void TrayMenu_ForceCrash_Click(object sender, System.EventArgs e)
|
||||||
{
|
{
|
||||||
Instance.Browser.LoadUrl("chrome://crash");
|
Instance.Browser.LoadUrl("chrome://crash");
|
||||||
|
|||||||
+11
-17
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using DiscordRPC;
|
using DiscordRPC;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
@@ -135,21 +129,21 @@ namespace VRCX
|
|||||||
}
|
}
|
||||||
return Encoding.UTF8.GetString(bytesArr, 0, bytesArr.Length - bytesToRemove);
|
return Encoding.UTF8.GetString(bytesArr, 0, bytesArr.Length - bytesToRemove);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetAssets(
|
public void SetAssets(
|
||||||
string details,
|
string details,
|
||||||
string state,
|
string state,
|
||||||
string detailsUrl,
|
string detailsUrl,
|
||||||
|
|
||||||
string largeKey,
|
string largeKey,
|
||||||
string largeText,
|
string largeText,
|
||||||
|
|
||||||
string smallKey,
|
string smallKey,
|
||||||
string smallText,
|
string smallText,
|
||||||
|
|
||||||
double startUnixMilliseconds,
|
double startUnixMilliseconds,
|
||||||
double endUnixMilliseconds,
|
double endUnixMilliseconds,
|
||||||
|
|
||||||
string partyId,
|
string partyId,
|
||||||
int partySize,
|
int partySize,
|
||||||
int partyMax,
|
int partyMax,
|
||||||
@@ -171,21 +165,21 @@ namespace VRCX
|
|||||||
_lock.ExitWriteLock();
|
_lock.ExitWriteLock();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_presence.Details = LimitByteLength(details, 127);
|
_presence.Details = LimitByteLength(details, 127);
|
||||||
_presence.DetailsUrl = !string.IsNullOrEmpty(detailsUrl) ? detailsUrl : null;
|
_presence.DetailsUrl = !string.IsNullOrEmpty(detailsUrl) ? detailsUrl : null;
|
||||||
// _presence.StateUrl
|
// _presence.StateUrl
|
||||||
_presence.State = LimitByteLength(state, 127);
|
_presence.State = LimitByteLength(state, 127);
|
||||||
_presence.Assets ??= new Assets();
|
_presence.Assets ??= new Assets();
|
||||||
|
|
||||||
_presence.Assets.LargeImageKey = largeKey;
|
_presence.Assets.LargeImageKey = largeKey;
|
||||||
_presence.Assets.LargeImageText = largeText;
|
_presence.Assets.LargeImageText = largeText;
|
||||||
_presence.Assets.LargeImageUrl = VrcxUrl;
|
_presence.Assets.LargeImageUrl = VrcxUrl;
|
||||||
|
|
||||||
_presence.Assets.SmallImageKey = smallKey;
|
_presence.Assets.SmallImageKey = smallKey;
|
||||||
_presence.Assets.SmallImageText = smallText;
|
_presence.Assets.SmallImageText = smallText;
|
||||||
// m_Presence.Assets.SmallImageUrl
|
// m_Presence.Assets.SmallImageUrl
|
||||||
|
|
||||||
if (startUnixMilliseconds == 0)
|
if (startUnixMilliseconds == 0)
|
||||||
{
|
{
|
||||||
_presence.Timestamps = null;
|
_presence.Timestamps = null;
|
||||||
@@ -214,7 +208,7 @@ namespace VRCX
|
|||||||
|
|
||||||
_presence.Type = (ActivityType)activityType;
|
_presence.Type = (ActivityType)activityType;
|
||||||
_presence.StatusDisplay = (StatusDisplayType)statusDisplayType;
|
_presence.StatusDisplay = (StatusDisplayType)statusDisplayType;
|
||||||
|
|
||||||
Button[] buttons = [];
|
Button[] buttons = [];
|
||||||
if (!string.IsNullOrEmpty(buttonUrl))
|
if (!string.IsNullOrEmpty(buttonUrl))
|
||||||
{
|
{
|
||||||
@@ -224,7 +218,7 @@ namespace VRCX
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
_presence.Buttons = buttons;
|
_presence.Buttons = buttons;
|
||||||
|
|
||||||
if (_discordAppId != appId)
|
if (_discordAppId != appId)
|
||||||
{
|
{
|
||||||
_discordAppId = appId;
|
_discordAppId = appId;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Concurrent;
|
using System.Collections.Concurrent;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Concurrent;
|
using System.Collections.Concurrent;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using CefSharp;
|
using CefSharp;
|
||||||
using CefSharp.Enums;
|
using CefSharp.Enums;
|
||||||
using CefSharp.OffScreen;
|
using CefSharp.OffScreen;
|
||||||
@@ -100,22 +94,22 @@ namespace VRCX
|
|||||||
{
|
{
|
||||||
if ((IntPtr)_device1.Handle == IntPtr.Zero)
|
if ((IntPtr)_device1.Handle == IntPtr.Zero)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if ((IntPtr)_deviceContext.Handle == IntPtr.Zero)
|
if ((IntPtr)_deviceContext.Handle == IntPtr.Zero)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if ((IntPtr)_query.Handle == IntPtr.Zero)
|
if ((IntPtr)_query.Handle == IntPtr.Zero)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if ((IntPtr)_renderTarget.Handle == IntPtr.Zero)
|
if ((IntPtr)_renderTarget.Handle == IntPtr.Zero)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
using ComPtr<ID3D11Texture2D> cefTexture =
|
using ComPtr<ID3D11Texture2D> cefTexture =
|
||||||
_device1.OpenSharedResource1<ID3D11Texture2D>(paintInfo.SharedTextureHandle.ToPointer());
|
_device1.OpenSharedResource1<ID3D11Texture2D>(paintInfo.SharedTextureHandle.ToPointer());
|
||||||
_deviceContext.CopyResource(_renderTarget, cefTexture);
|
_deviceContext.CopyResource(_renderTarget, cefTexture);
|
||||||
_deviceContext.End(_query);
|
_deviceContext.End(_query);
|
||||||
_deviceContext.Flush();
|
_deviceContext.Flush();
|
||||||
|
|
||||||
while (_deviceContext.GetData(_query, IntPtr.Zero.ToPointer(), 0, 0) == 1)
|
while (_deviceContext.GetData(_query, IntPtr.Zero.ToPointer(), 0, 0) == 1)
|
||||||
{
|
{
|
||||||
Thread.Yield();
|
Thread.Yield();
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using CefSharp;
|
using CefSharp;
|
||||||
using CefSharp.Enums;
|
using CefSharp.Enums;
|
||||||
using CefSharp.OffScreen;
|
using CefSharp.OffScreen;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Concurrent;
|
using System.Collections.Concurrent;
|
||||||
using System.Collections.Generic;
|
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 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 _wristOverlay;
|
||||||
private static OffScreenBrowser _hmdOverlay;
|
private static OffScreenBrowser _hmdOverlay;
|
||||||
|
|
||||||
private readonly List<string[]> _deviceList;
|
private readonly List<string[]> _deviceList;
|
||||||
private readonly ReaderWriterLockSlim _deviceListLock;
|
private readonly ReaderWriterLockSlim _deviceListLock;
|
||||||
private bool _active;
|
private bool _active;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Concurrent;
|
using System.Collections.Concurrent;
|
||||||
using System.Collections.Generic;
|
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 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 _wristOverlay;
|
||||||
private static OffScreenBrowserLegacy _hmdOverlay;
|
private static OffScreenBrowserLegacy _hmdOverlay;
|
||||||
|
|
||||||
private readonly List<string[]> _deviceList;
|
private readonly List<string[]> _deviceList;
|
||||||
private readonly ReaderWriterLockSlim _deviceListLock;
|
private readonly ReaderWriterLockSlim _deviceListLock;
|
||||||
private bool _active;
|
private bool _active;
|
||||||
@@ -43,7 +37,7 @@ namespace VRCX
|
|||||||
private Thread _thread;
|
private Thread _thread;
|
||||||
private bool _wristOverlayActive;
|
private bool _wristOverlayActive;
|
||||||
private DateTime _nextOverlayUpdate;
|
private DateTime _nextOverlayUpdate;
|
||||||
|
|
||||||
private DXGI _dxgi;
|
private DXGI _dxgi;
|
||||||
private D3D11 _d3d11;
|
private D3D11 _d3d11;
|
||||||
private ComPtr<IDXGIFactory2> _factory;
|
private ComPtr<IDXGIFactory2> _factory;
|
||||||
|
|||||||
Generated
-6
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
namespace VRCX
|
namespace VRCX
|
||||||
{
|
{
|
||||||
partial class VRForm
|
partial class VRForm
|
||||||
|
|||||||
@@ -1,9 +1,4 @@
|
|||||||
// Copyright(c) 2019-2025 pypy, Natsumi and individual contributors.
|
using System.IO;
|
||||||
//
|
|
||||||
// This work is licensed under the terms of the MIT license.
|
|
||||||
// For a copy, see <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System.IO;
|
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using CefSharp;
|
using CefSharp;
|
||||||
using CefSharp.WinForms;
|
using CefSharp.WinForms;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Concurrent;
|
using System.Collections.Concurrent;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using NLog;
|
using NLog;
|
||||||
using NLog.Targets;
|
using NLog.Targets;
|
||||||
using System;
|
using System;
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
@@ -74,7 +68,7 @@ namespace VRCX
|
|||||||
{
|
{
|
||||||
if (arg == VrcxLaunchArguments.IsStartupPrefix)
|
if (arg == VrcxLaunchArguments.IsStartupPrefix)
|
||||||
arguments.IsStartup = true;
|
arguments.IsStartup = true;
|
||||||
|
|
||||||
if (arg == VrcxLaunchArguments.IsUpgradePrefix)
|
if (arg == VrcxLaunchArguments.IsUpgradePrefix)
|
||||||
arguments.IsUpgrade = true;
|
arguments.IsUpgrade = true;
|
||||||
|
|
||||||
@@ -83,7 +77,7 @@ namespace VRCX
|
|||||||
|
|
||||||
if (arg.StartsWith(VrcxLaunchArguments.LaunchCommandPrefix) && arg.Length > VrcxLaunchArguments.LaunchCommandPrefix.Length)
|
if (arg.StartsWith(VrcxLaunchArguments.LaunchCommandPrefix) && arg.Length > VrcxLaunchArguments.LaunchCommandPrefix.Length)
|
||||||
arguments.LaunchCommand = arg.Substring(VrcxLaunchArguments.LaunchCommandPrefix.Length);
|
arguments.LaunchCommand = arg.Substring(VrcxLaunchArguments.LaunchCommandPrefix.Length);
|
||||||
|
|
||||||
if (arg.StartsWith(VrcxLaunchArguments.LinuxLaunchCommandPrefix) && arg.Length > VrcxLaunchArguments.LinuxLaunchCommandPrefix.Length)
|
if (arg.StartsWith(VrcxLaunchArguments.LinuxLaunchCommandPrefix) && arg.Length > VrcxLaunchArguments.LinuxLaunchCommandPrefix.Length)
|
||||||
arguments.LaunchCommand = arg.Substring(VrcxLaunchArguments.LinuxLaunchCommandPrefix.Length);
|
arguments.LaunchCommand = arg.Substring(VrcxLaunchArguments.LinuxLaunchCommandPrefix.Length);
|
||||||
|
|
||||||
@@ -100,7 +94,7 @@ namespace VRCX
|
|||||||
{
|
{
|
||||||
public const string IsStartupPrefix = "--startup";
|
public const string IsStartupPrefix = "--startup";
|
||||||
public bool IsStartup { get; set; } = false;
|
public bool IsStartup { get; set; } = false;
|
||||||
|
|
||||||
public const string IsUpgradePrefix = "/Upgrade";
|
public const string IsUpgradePrefix = "/Upgrade";
|
||||||
public bool IsUpgrade { get; set; } = false;
|
public bool IsUpgrade { get; set; } = false;
|
||||||
|
|
||||||
|
|||||||
+2
-8
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
@@ -56,7 +50,7 @@ namespace VRCX
|
|||||||
{
|
{
|
||||||
if (Process.GetProcessesByName("VRCX_Setup").Length > 0)
|
if (Process.GetProcessesByName("VRCX_Setup").Length > 0)
|
||||||
Environment.Exit(0);
|
Environment.Exit(0);
|
||||||
|
|
||||||
if (File.Exists(TempDownload))
|
if (File.Exists(TempDownload))
|
||||||
File.Delete(TempDownload);
|
File.Delete(TempDownload);
|
||||||
if (File.Exists(VrcxSetupExecutable))
|
if (File.Exists(VrcxSetupExecutable))
|
||||||
@@ -194,7 +188,7 @@ namespace VRCX
|
|||||||
await destination.WriteAsync(buffer.AsMemory(0, bytesRead), _cancellationToken);
|
await destination.WriteAsync(buffer.AsMemory(0, bytesRead), _cancellationToken);
|
||||||
totalBytesRead += bytesRead;
|
totalBytesRead += bytesRead;
|
||||||
}
|
}
|
||||||
|
|
||||||
destination.Close();
|
destination.Close();
|
||||||
|
|
||||||
var data = new FileInfo(TempDownload);
|
var data = new FileInfo(TempDownload);
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
using Microsoft.Win32;
|
using Microsoft.Win32;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
MIT License
|
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
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
@import 'element-plus/dist/index.css';
|
@import 'element-plus/dist/index.css';
|
||||||
@import 'element-plus/theme-chalk/dark/css-vars.css';
|
@import 'element-plus/theme-chalk/dark/css-vars.css';
|
||||||
|
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
import { createApp } from 'vue';
|
import { createApp } from 'vue';
|
||||||
|
|
||||||
import ElementPlus from 'element-plus';
|
import ElementPlus from 'element-plus';
|
||||||
|
|||||||
@@ -133,7 +133,7 @@
|
|||||||
}}</a>
|
}}</a>
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
© 2019-2025
|
© 2019-2026
|
||||||
<a class="x-link" @click="openExternalLink('https://github.com/pypy-vrc')">pypy</a> &
|
<a class="x-link" @click="openExternalLink('https://github.com/pypy-vrc')">pypy</a> &
|
||||||
<a class="x-link" @click="openExternalLink('https://github.com/Natsumi-sama')">Natsumi</a>
|
<a class="x-link" @click="openExternalLink('https://github.com/Natsumi-sama')">Natsumi</a>
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
@@ -282,7 +282,7 @@
|
|||||||
<span class="header">{{ t('view.settings.general.legal_notice.header') }}</span>
|
<span class="header">{{ t('view.settings.general.legal_notice.header') }}</span>
|
||||||
<div class="options-container-item" style="display: block">
|
<div class="options-container-item" style="display: block">
|
||||||
<p>
|
<p>
|
||||||
© 2019-2025
|
© 2019-2026
|
||||||
<a class="x-link" @click="openExternalLink('https://github.com/pypy-vrc')">pypy</a> &
|
<a class="x-link" @click="openExternalLink('https://github.com/pypy-vrc')">pypy</a> &
|
||||||
<a class="x-link" @click="openExternalLink('https://github.com/Natsumi-sama')">Natsumi</a>
|
<a class="x-link" @click="openExternalLink('https://github.com/Natsumi-sama')">Natsumi</a>
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
@import 'tailwindcss';
|
@import 'tailwindcss';
|
||||||
|
|
||||||
@import 'animate.css/animate.min.css';
|
@import 'animate.css/animate.min.css';
|
||||||
|
|||||||
@@ -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 <https://opensource.org/licenses/MIT>.
|
|
||||||
|
|
||||||
import { createApp } from 'vue';
|
import { createApp } from 'vue';
|
||||||
|
|
||||||
import { i18n } from '../plugin/i18n';
|
import { i18n } from '../plugin/i18n';
|
||||||
|
|||||||
Reference in New Issue
Block a user