Compare commits
102 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
18123b2755 | ||
|
|
bbda0f33bd | ||
|
|
1edd364a33 | ||
|
|
89d6acb623 | ||
|
|
ff2f648379 | ||
|
|
0d9cf1cd91 | ||
|
|
40505f7628 | ||
|
|
3dee5372f2 | ||
|
|
6ee5b1014b | ||
|
|
189ba62385 | ||
|
|
b09e7ff2bc | ||
|
|
31492a0af3 | ||
|
|
f3d81252f0 | ||
|
|
e795b85ab8 | ||
|
|
3c4e4677d4 | ||
|
|
9f584da9ab | ||
|
|
a440848584 | ||
|
|
2301aa6425 | ||
|
|
263f2bf4c1 | ||
|
|
59d0c9a7ce | ||
|
|
19432a6362 | ||
|
|
97ec1cd385 | ||
|
|
162d60bbdc | ||
|
|
3bcdc7871d | ||
|
|
1f845a3682 | ||
|
|
a0a97a9451 | ||
|
|
c6261687b3 | ||
|
|
6deb311ecc | ||
|
|
0c6c8d5546 | ||
|
|
4e391c0e56 | ||
|
|
9788aa494a | ||
|
|
4f0cc7ab71 | ||
|
|
0bf9a00af2 | ||
|
|
fa9baced7a | ||
|
|
1f51f41954 | ||
|
|
bc8599315e | ||
|
|
1c49a33651 | ||
|
|
13ab8a74d6 | ||
|
|
51155f105c | ||
|
|
af46aa7c78 | ||
|
|
a7d46753aa | ||
|
|
161f257985 | ||
|
|
223de0ba4a | ||
|
|
2fa9c34e98 | ||
|
|
5d5011e409 | ||
|
|
fd4357bdad | ||
|
|
1a073f9661 | ||
|
|
e73c204d1c | ||
|
|
80cb0b46bc | ||
|
|
680a5f256a | ||
|
|
2b02d04219 | ||
|
|
7a61d73e65 | ||
|
|
972116ee96 | ||
|
|
d780607363 | ||
|
|
236004aef9 | ||
|
|
07bc133096 | ||
|
|
50427ef2d3 | ||
|
|
63eef42ca0 | ||
|
|
8723b195df | ||
|
|
ae86b47268 | ||
|
|
9901a0d770 | ||
|
|
da48607154 | ||
|
|
35f3a80eb1 | ||
|
|
0da1bf7a3b | ||
|
|
c027fca339 | ||
|
|
5ac98f5ef8 | ||
|
|
3cb0cca801 | ||
|
|
b4fd4c76a0 | ||
|
|
ecf19115c6 | ||
|
|
d475936bbb | ||
|
|
c404d69b54 | ||
|
|
6edc9cf7e9 | ||
|
|
71d89284f1 | ||
|
|
39473ba15c | ||
|
|
3f3fa3dc11 | ||
|
|
3f06099d38 | ||
|
|
450cf282aa | ||
|
|
804c452f6d | ||
|
|
c576f62d28 | ||
|
|
73651723dd | ||
|
|
82cc713372 | ||
|
|
6d0788268d | ||
|
|
c183cb6d7a | ||
|
|
3b83db0177 | ||
|
|
03f4dcb687 | ||
|
|
9415daba07 | ||
|
|
553571027d | ||
|
|
273ddda076 | ||
|
|
3c8f08a380 | ||
|
|
b5ac8175dc | ||
|
|
d765a9b6eb | ||
|
|
409afd8eac | ||
|
|
d7640d4c5d | ||
|
|
3828da4864 | ||
|
|
a45f7db85c | ||
|
|
df6a9e9286 | ||
|
|
c516f80dc1 | ||
|
|
0ef2f296f5 | ||
|
|
48597983e2 | ||
|
|
a6a4a057fe | ||
|
|
b4c7795d25 | ||
|
|
951a899705 |
70
ADB.cs
70
ADB.cs
@@ -9,8 +9,8 @@ namespace AndroidSideloader
|
||||
internal class ADB
|
||||
{
|
||||
private static readonly Process adb = new Process();
|
||||
public static string adbFolderPath = $"{Path.GetPathRoot(Environment.SystemDirectory)}RSL\\platform-tools";
|
||||
public static string adbFilePath = adbFolderPath + "\\adb.exe";
|
||||
public static string adbFolderPath = Path.Combine(Path.GetPathRoot(Environment.SystemDirectory), "RSL", "platform-tools");
|
||||
public static string adbFilePath = Path.Combine(adbFolderPath, "adb.exe");
|
||||
public static string DeviceID = "";
|
||||
public static string package = "";
|
||||
public static ProcessOutput RunAdbCommandToString(string command)
|
||||
@@ -122,15 +122,15 @@ namespace AndroidSideloader
|
||||
if (!graceful)
|
||||
{
|
||||
adb.Kill();
|
||||
adb.WaitForExit();
|
||||
adb.WaitForExit();
|
||||
}
|
||||
}
|
||||
else if (command.Contains("connect"))
|
||||
{
|
||||
bool graceful = adb.WaitForExit(3000);
|
||||
bool graceful = adb.WaitForExit(3000);
|
||||
if (!graceful)
|
||||
{
|
||||
adb.Kill();
|
||||
adb.Kill();
|
||||
adb.WaitForExit();
|
||||
}
|
||||
}
|
||||
@@ -196,12 +196,15 @@ namespace AndroidSideloader
|
||||
|
||||
public static void ADBDebugWarning()
|
||||
{
|
||||
DialogResult dialogResult = FlexibleMessageBox.Show(Program.form, "Please check inside your headset for ADB DEBUGGING prompt, check box to \"Always allow from this computer.\" and hit OK.\nPlease note that even if you have done this\nbefore it will reset itself from time to time.\n\nPress CANCEL if you want to disable this prompt (FOR DEBUGGING ONLY, NOT RECOMMENDED).", "ADB Debugging not enabled.", MessageBoxButtons.OKCancel);
|
||||
if (dialogResult == DialogResult.Cancel)
|
||||
Program.form.Invoke(() =>
|
||||
{
|
||||
Properties.Settings.Default.adbdebugwarned = true;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
DialogResult dialogResult = FlexibleMessageBox.Show(Program.form, "Please check inside your headset for ADB DEBUGGING prompt, check box to \"Always allow from this computer.\" and hit OK.\nPlease note that even if you have done this\nbefore it will reset itself from time to time.\n\nPress CANCEL if you want to disable this prompt (FOR DEBUGGING ONLY, NOT RECOMMENDED).", "ADB Debugging not enabled.", MessageBoxButtons.OKCancel);
|
||||
if (dialogResult == DialogResult.Cancel)
|
||||
{
|
||||
Properties.Settings.Default.adbdebugwarned = true;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public static ProcessOutput UninstallPackage(string package)
|
||||
@@ -292,46 +295,6 @@ namespace AndroidSideloader
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
string gamenameforQU = Sideloader.PackageNametoGameName(packagename);
|
||||
if (Properties.Settings.Default.QUturnedon)
|
||||
{
|
||||
if (gamenameforQU.Contains("-QU") || path.Contains("-QU"))
|
||||
{
|
||||
string gameName = packagename;
|
||||
packagename = Sideloader.gameNameToPackageName(gameName);
|
||||
|
||||
Program.form.changeTitle("Pushing Custom QU S3 Config.JSON.");
|
||||
if (!Directory.Exists($"/sdcard/android/data/{packagename}"))
|
||||
{
|
||||
_ = RunAdbCommandToString($"shell mkdir /sdcard/android/data/{packagename}");
|
||||
}
|
||||
|
||||
if (!Directory.Exists($"/sdcard/android/data/{packagename}/private"))
|
||||
{
|
||||
_ = RunAdbCommandToString($"shell mkdir /sdcard/android/data/{packagename}/private");
|
||||
}
|
||||
|
||||
Random r = new Random();
|
||||
int x = r.Next(999999999);
|
||||
int y = r.Next(9999999);
|
||||
|
||||
long sum = (y * (long)1000000000) + x;
|
||||
|
||||
int x2 = r.Next(999999999);
|
||||
int y2 = r.Next(9999999);
|
||||
|
||||
long sum2 = (y2 * (long)1000000000) + x2;
|
||||
Properties.Settings.Default.QUStringF = $"{{\"user_id\":{sum},\"app_id\":\"{sum2}\",";
|
||||
Properties.Settings.Default.Save();
|
||||
string boff = Properties.Settings.Default.QUStringF + Properties.Settings.Default.QUString;
|
||||
File.WriteAllText($"{Properties.Settings.Default.MainDir}\\config.json", boff);
|
||||
string blank = "";
|
||||
File.WriteAllText($"{Properties.Settings.Default.MainDir}\\delete_settings", blank);
|
||||
ret += ADB.RunAdbCommandToString($"push \"{Properties.Settings.Default.MainDir}\\delete_settings\" /sdcard/android/data/{packagename}/private/delete_settings");
|
||||
ret += ADB.RunAdbCommandToString($"push \"{Properties.Settings.Default.MainDir}\\config.json\" /sdcard/android/data/{packagename}/private/config.json");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Program.form.changeTitle(string.Empty);
|
||||
return ret;
|
||||
@@ -340,9 +303,10 @@ namespace AndroidSideloader
|
||||
public static ProcessOutput CopyOBB(string path)
|
||||
{
|
||||
string folder = Path.GetFileName(path);
|
||||
return !folder.Contains("+") && !folder.Contains("_") && folder.Contains(".")
|
||||
? RunAdbCommandToString($"push \"{path}\" \"/sdcard/Android/obb\"")
|
||||
: new ProcessOutput();
|
||||
string lastFolder = Path.GetFileName(path);
|
||||
return folder.Contains(".")
|
||||
? RunAdbCommandToString($"shell rm -rf /sdcard/Android/obb/{lastFolder} && mkdir /sdcard/Android/obb/{lastFolder}") + RunAdbCommandToString($"push \"{path}\" \"/sdcard/Android/obb\"")
|
||||
: new ProcessOutput("No OBB Folder found");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -285,6 +285,7 @@
|
||||
<DependentUpon>UsernameForm.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<None Include="codenames" />
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\DataSources\AndroidSideloader.Properties.Resources.datasource" />
|
||||
<None Include="Properties\DataSources\AndroidSideloader.Properties.Settings.datasource" />
|
||||
|
||||
33
App.config
33
App.config
@@ -56,36 +56,9 @@
|
||||
<setting name="ADBPath" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="QUsett" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="QuChecked" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="QUhz" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="QUres" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="QUy" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="QUx" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="QUname" serializeAs="String">
|
||||
<value>Change Me</value>
|
||||
</setting>
|
||||
<setting name="QUString" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="MainDir" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="QUStringF" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="delsh" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
@@ -104,9 +77,6 @@
|
||||
<setting name="PackageNameToCB" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="EnterKeyInstall" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="DownUpHeld" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
@@ -122,9 +92,6 @@
|
||||
<setting name="CurrentCrashName" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="QUturnedon" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="adbdebugwarned" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
|
||||
@@ -1,4 +1,44 @@
|
||||
RSL 2.22
|
||||
RSL 2.26
|
||||
|
||||
- Feature: Top right update labels will now show the amount of games per state
|
||||
- Feature: Open Download Dir and Run ADB Commands added to left sidebar
|
||||
- Feature: Toggle sideloading button
|
||||
- Feature: Show progress of extraction
|
||||
- Fix: Crash when failing to write to the StoredIP.txt
|
||||
- Fix: Drag and drop + Copy OBB for Quest 3 users
|
||||
- Fix: Properly kill off WebView2 instances
|
||||
- Fix: Added parents to dialogs
|
||||
- Fix: GUI freezing on launch
|
||||
- Fix: No Device Mode output
|
||||
- Chore: Make missing space message more user-friendly
|
||||
- Chore: Remove QU Settings
|
||||
|
||||
RSL 2.25.1
|
||||
|
||||
- Fix: Device not authorized prompt showing up after authorization.
|
||||
|
||||
RSL 2.25
|
||||
|
||||
- Fix: Fix to unauthorized device bug
|
||||
- Chore: Update Wiki URL
|
||||
|
||||
|
||||
RSL 2.24
|
||||
|
||||
- Feature: Added "Open Download" and "Open Backup" Directory buttons to Settings Menu
|
||||
- Fix: OBB Pushes for Quest 3 Devices
|
||||
- Fix: Crash when attempting to backup
|
||||
- Fix: Searchbar Anchoring when resizing
|
||||
- Fix: Remove instances where OBBs are pushed multiple times
|
||||
- Fix: Additional Logging and Startup Optimizations
|
||||
|
||||
RSL 2.23
|
||||
|
||||
- Fix: Rookie should now only prompt for newer versions of all games
|
||||
- Fix: Crash when attempting to delete invalid directories or files
|
||||
- Feature: Enable Maximize Button
|
||||
|
||||
RSL 2.22
|
||||
|
||||
- Fix: Crash on failed extractions.
|
||||
- Fix: Trailers controls not functioning properly.
|
||||
|
||||
3085
MainForm.Designer.cs
generated
3085
MainForm.Designer.cs
generated
File diff suppressed because it is too large
Load Diff
1123
MainForm.cs
1123
MainForm.cs
File diff suppressed because it is too large
Load Diff
@@ -123,9 +123,6 @@
|
||||
<metadata name="etaLabel_Tooltip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>178, 56</value>
|
||||
</metadata>
|
||||
<metadata name="EnterInstallBox_Tooltip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>514, 95</value>
|
||||
</metadata>
|
||||
<metadata name="startsideloadbutton_Tooltip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
@@ -159,12 +156,6 @@
|
||||
<metadata name="settingsButton_Tooltip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>319, 56</value>
|
||||
</metadata>
|
||||
<metadata name="InstallQUset_Tooltip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 56</value>
|
||||
</metadata>
|
||||
<metadata name="removeQUSetting_Tooltip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>1365, 17</value>
|
||||
</metadata>
|
||||
<metadata name="QuestOptionsButton_Tooltip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>1158, 17</value>
|
||||
</metadata>
|
||||
@@ -180,4 +171,10 @@
|
||||
<metadata name="listApkButton_Tooltip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>376, 17</value>
|
||||
</metadata>
|
||||
<metadata name="speedLabel_Tooltip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>219, 17</value>
|
||||
</metadata>
|
||||
<metadata name="etaLabel_Tooltip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>178, 56</value>
|
||||
</metadata>
|
||||
</root>
|
||||
133
Properties/Settings.Designer.cs
generated
133
Properties/Settings.Designer.cs
generated
@@ -203,101 +203,7 @@ namespace AndroidSideloader.Properties {
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool QUsett {
|
||||
get {
|
||||
return ((bool)(this["QUsett"]));
|
||||
}
|
||||
set {
|
||||
this["QUsett"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string QuChecked {
|
||||
get {
|
||||
return ((string)(this["QuChecked"]));
|
||||
}
|
||||
set {
|
||||
this["QuChecked"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public string QUhz {
|
||||
get {
|
||||
return ((string)(this["QUhz"]));
|
||||
}
|
||||
set {
|
||||
this["QUhz"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public string QUres {
|
||||
get {
|
||||
return ((string)(this["QUres"]));
|
||||
}
|
||||
set {
|
||||
this["QUres"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public string QUy {
|
||||
get {
|
||||
return ((string)(this["QUy"]));
|
||||
}
|
||||
set {
|
||||
this["QUy"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public string QUx {
|
||||
get {
|
||||
return ((string)(this["QUx"]));
|
||||
}
|
||||
set {
|
||||
this["QUx"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("Change Me")]
|
||||
public string QUname {
|
||||
get {
|
||||
return ((string)(this["QUname"]));
|
||||
}
|
||||
set {
|
||||
this["QUname"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string QUString {
|
||||
get {
|
||||
return ((string)(this["QUString"]));
|
||||
}
|
||||
set {
|
||||
this["QUString"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
@@ -310,18 +216,7 @@ namespace AndroidSideloader.Properties {
|
||||
this["MainDir"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string QUStringF {
|
||||
get {
|
||||
return ((string)(this["QUStringF"]));
|
||||
}
|
||||
set {
|
||||
this["QUStringF"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
@@ -395,18 +290,6 @@ namespace AndroidSideloader.Properties {
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool EnterKeyInstall {
|
||||
get {
|
||||
return ((bool)(this["EnterKeyInstall"]));
|
||||
}
|
||||
set {
|
||||
this["EnterKeyInstall"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
@@ -466,19 +349,7 @@ namespace AndroidSideloader.Properties {
|
||||
this["CurrentCrashName"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool QUturnedon {
|
||||
get {
|
||||
return ((bool)(this["QUturnedon"]));
|
||||
}
|
||||
set {
|
||||
this["QUturnedon"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
|
||||
@@ -47,36 +47,9 @@
|
||||
<Setting Name="ADBPath" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="QUsett" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="QuChecked" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="QUhz" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="QUres" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="QUy" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="QUx" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="QUname" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">Change Me</Value>
|
||||
</Setting>
|
||||
<Setting Name="QUString" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="MainDir" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="QUStringF" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="delsh" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
@@ -95,9 +68,6 @@
|
||||
<Setting Name="PackageNameToCB" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="EnterKeyInstall" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="DownUpHeld" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
@@ -113,9 +83,6 @@
|
||||
<Setting Name="CurrentCrashName" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="QUturnedon" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="adbdebugwarned" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
|
||||
474
QuestForm.Designer.cs
generated
474
QuestForm.Designer.cs
generated
@@ -35,42 +35,24 @@ namespace AndroidSideloader
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(QuestForm));
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.label11 = new System.Windows.Forms.Label();
|
||||
this.QUon = new System.Windows.Forms.CheckBox();
|
||||
this.label12 = new System.Windows.Forms.Label();
|
||||
this.label13 = new System.Windows.Forms.Label();
|
||||
this.DeleteShots = new System.Windows.Forms.CheckBox();
|
||||
this.splitter1 = new System.Windows.Forms.Splitter();
|
||||
this.label10 = new System.Windows.Forms.Label();
|
||||
this.label14 = new System.Windows.Forms.Label();
|
||||
this.label15 = new System.Windows.Forms.Label();
|
||||
this.label16 = new System.Windows.Forms.Label();
|
||||
this.CPUComboBox = new System.Windows.Forms.ComboBox();
|
||||
this.GPUComboBox = new System.Windows.Forms.ComboBox();
|
||||
this.label7 = new System.Windows.Forms.Label();
|
||||
this.label8 = new System.Windows.Forms.Label();
|
||||
this.label9 = new System.Windows.Forms.Label();
|
||||
this.label6 = new System.Windows.Forms.Label();
|
||||
this.label5 = new System.Windows.Forms.Label();
|
||||
this.ResolutionLabel = new System.Windows.Forms.Label();
|
||||
this.GlobalUsername = new System.Windows.Forms.TextBox();
|
||||
this.FOVy = new System.Windows.Forms.TextBox();
|
||||
this.FOVx = new System.Windows.Forms.TextBox();
|
||||
this.UsrBox = new System.Windows.Forms.TextBox();
|
||||
this.ResBox = new System.Windows.Forms.TextBox();
|
||||
this.TextureResTextBox = new System.Windows.Forms.TextBox();
|
||||
this.QURfrRt = new System.Windows.Forms.ComboBox();
|
||||
this.RefreshRateComboBox = new System.Windows.Forms.ComboBox();
|
||||
this.button1 = new AndroidSideloader.RoundButton();
|
||||
this.WifiWake = new AndroidSideloader.RoundButton();
|
||||
this.questVids = new AndroidSideloader.RoundButton();
|
||||
this.questPics = new AndroidSideloader.RoundButton();
|
||||
this.QUEnable = new AndroidSideloader.RoundButton();
|
||||
this.deleteButton = new AndroidSideloader.RoundButton();
|
||||
this.ResetQU = new AndroidSideloader.RoundButton();
|
||||
this.button3 = new AndroidSideloader.RoundButton();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// label1
|
||||
@@ -79,11 +61,11 @@ namespace AndroidSideloader
|
||||
this.label1.BackColor = System.Drawing.Color.Transparent;
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label1.ForeColor = System.Drawing.Color.LightCyan;
|
||||
this.label1.Location = new System.Drawing.Point(31, 5);
|
||||
this.label1.Location = new System.Drawing.Point(72, 276);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(309, 20);
|
||||
this.label1.Size = new System.Drawing.Size(165, 20);
|
||||
this.label1.TabIndex = 6;
|
||||
this.label1.Text = "Temporary settings for all Quest apps";
|
||||
this.label1.Text = "Temporary Settings";
|
||||
this.label1.TextAlign = System.Drawing.ContentAlignment.TopCenter;
|
||||
//
|
||||
// label2
|
||||
@@ -93,41 +75,13 @@ namespace AndroidSideloader
|
||||
this.label2.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label2.ForeColor = System.Drawing.Color.LightSteelBlue;
|
||||
this.label2.Location = new System.Drawing.Point(70, 28);
|
||||
this.label2.Location = new System.Drawing.Point(83, 303);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(230, 32);
|
||||
this.label2.Size = new System.Drawing.Size(143, 16);
|
||||
this.label2.TabIndex = 6;
|
||||
this.label2.Text = "Reboot to reset. - Turn screen off, \r\nthen back on with hold button to apply.";
|
||||
this.label2.Text = "Reboot Quest to Reset";
|
||||
this.label2.TextAlign = System.Drawing.ContentAlignment.TopCenter;
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.BackColor = System.Drawing.Color.Transparent;
|
||||
this.label3.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label3.ForeColor = System.Drawing.Color.LightCyan;
|
||||
this.label3.Location = new System.Drawing.Point(57, 339);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(256, 20);
|
||||
this.label3.TabIndex = 6;
|
||||
this.label3.Text = "QU Settings (for -QU releases)";
|
||||
this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.BackColor = System.Drawing.Color.Transparent;
|
||||
this.label4.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label4.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label4.ForeColor = System.Drawing.Color.LightSteelBlue;
|
||||
this.label4.Location = new System.Drawing.Point(16, 363);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(337, 16);
|
||||
this.label4.TabIndex = 6;
|
||||
this.label4.Text = "Persists on device reboot. Enter 0 to reset any category.\r\n";
|
||||
this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// label11
|
||||
//
|
||||
this.label11.AutoSize = true;
|
||||
@@ -135,31 +89,13 @@ namespace AndroidSideloader
|
||||
this.label11.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label11.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label11.ForeColor = System.Drawing.Color.LightCyan;
|
||||
this.label11.Location = new System.Drawing.Point(26, 217);
|
||||
this.label11.Location = new System.Drawing.Point(18, 94);
|
||||
this.label11.Name = "label11";
|
||||
this.label11.Size = new System.Drawing.Size(319, 20);
|
||||
this.label11.Size = new System.Drawing.Size(272, 20);
|
||||
this.label11.TabIndex = 6;
|
||||
this.label11.Text = "Transfer screen/videoshots to Desktop";
|
||||
this.label11.Text = "Transfer screenshots to Desktop";
|
||||
this.label11.TextAlign = System.Drawing.ContentAlignment.TopCenter;
|
||||
//
|
||||
// QUon
|
||||
//
|
||||
this.QUon.AutoSize = true;
|
||||
this.QUon.BackColor = System.Drawing.Color.Transparent;
|
||||
this.QUon.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
this.QUon.Cursor = System.Windows.Forms.Cursors.Default;
|
||||
this.QUon.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.QUon.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F);
|
||||
this.QUon.ForeColor = System.Drawing.Color.LightSkyBlue;
|
||||
this.QUon.Location = new System.Drawing.Point(111, 383);
|
||||
this.QUon.Name = "QUon";
|
||||
this.QUon.Size = new System.Drawing.Size(148, 21);
|
||||
this.QUon.TabIndex = 8;
|
||||
this.QUon.Text = "Enable QU Settings";
|
||||
this.QUon.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.QUon.UseVisualStyleBackColor = false;
|
||||
this.QUon.CheckedChanged += new System.EventHandler(this.QUon_CheckedChanged);
|
||||
//
|
||||
// label12
|
||||
//
|
||||
this.label12.AutoSize = true;
|
||||
@@ -167,27 +103,13 @@ namespace AndroidSideloader
|
||||
this.label12.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label12.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label12.ForeColor = System.Drawing.Color.LightCyan;
|
||||
this.label12.Location = new System.Drawing.Point(121, 656);
|
||||
this.label12.Location = new System.Drawing.Point(92, 9);
|
||||
this.label12.Name = "label12";
|
||||
this.label12.Size = new System.Drawing.Size(128, 20);
|
||||
this.label12.Size = new System.Drawing.Size(124, 20);
|
||||
this.label12.TabIndex = 6;
|
||||
this.label12.Text = "Set username*";
|
||||
this.label12.Text = "Set Username";
|
||||
this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// label13
|
||||
//
|
||||
this.label13.AutoSize = true;
|
||||
this.label13.BackColor = System.Drawing.Color.Transparent;
|
||||
this.label13.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label13.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label13.ForeColor = System.Drawing.Color.LightSteelBlue;
|
||||
this.label13.Location = new System.Drawing.Point(83, 678);
|
||||
this.label13.Name = "label13";
|
||||
this.label13.Size = new System.Drawing.Size(203, 16);
|
||||
this.label13.TabIndex = 6;
|
||||
this.label13.Text = "*For games not released by -QU.";
|
||||
this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// DeleteShots
|
||||
//
|
||||
this.DeleteShots.AutoSize = true;
|
||||
@@ -197,7 +119,7 @@ namespace AndroidSideloader
|
||||
this.DeleteShots.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.DeleteShots.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F);
|
||||
this.DeleteShots.ForeColor = System.Drawing.Color.LightSkyBlue;
|
||||
this.DeleteShots.Location = new System.Drawing.Point(64, 296);
|
||||
this.DeleteShots.Location = new System.Drawing.Point(33, 232);
|
||||
this.DeleteShots.Name = "DeleteShots";
|
||||
this.DeleteShots.Size = new System.Drawing.Size(242, 21);
|
||||
this.DeleteShots.TabIndex = 7;
|
||||
@@ -210,7 +132,7 @@ namespace AndroidSideloader
|
||||
//
|
||||
this.splitter1.Location = new System.Drawing.Point(0, 0);
|
||||
this.splitter1.Name = "splitter1";
|
||||
this.splitter1.Size = new System.Drawing.Size(3, 737);
|
||||
this.splitter1.Size = new System.Drawing.Size(3, 486);
|
||||
this.splitter1.TabIndex = 14;
|
||||
this.splitter1.TabStop = false;
|
||||
//
|
||||
@@ -218,7 +140,7 @@ namespace AndroidSideloader
|
||||
//
|
||||
this.label10.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
|
||||
this.label10.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
|
||||
this.label10.Location = new System.Drawing.Point(-4, 327);
|
||||
this.label10.Location = new System.Drawing.Point(-4, 261);
|
||||
this.label10.Name = "label10";
|
||||
this.label10.Size = new System.Drawing.Size(394, 3);
|
||||
this.label10.TabIndex = 15;
|
||||
@@ -227,20 +149,11 @@ namespace AndroidSideloader
|
||||
//
|
||||
this.label14.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
|
||||
this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
|
||||
this.label14.Location = new System.Drawing.Point(-15, 211);
|
||||
this.label14.Location = new System.Drawing.Point(-4, 80);
|
||||
this.label14.Name = "label14";
|
||||
this.label14.Size = new System.Drawing.Size(394, 3);
|
||||
this.label14.TabIndex = 17;
|
||||
//
|
||||
// label15
|
||||
//
|
||||
this.label15.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
|
||||
this.label15.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
|
||||
this.label15.Location = new System.Drawing.Point(-12, 646);
|
||||
this.label15.Name = "label15";
|
||||
this.label15.Size = new System.Drawing.Size(394, 3);
|
||||
this.label15.TabIndex = 18;
|
||||
//
|
||||
// label16
|
||||
//
|
||||
this.label16.AutoSize = true;
|
||||
@@ -248,11 +161,11 @@ namespace AndroidSideloader
|
||||
this.label16.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label16.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label16.ForeColor = System.Drawing.Color.LightSteelBlue;
|
||||
this.label16.Location = new System.Drawing.Point(14, 241);
|
||||
this.label16.Location = new System.Drawing.Point(34, 153);
|
||||
this.label16.Name = "label16";
|
||||
this.label16.Size = new System.Drawing.Size(342, 16);
|
||||
this.label16.Size = new System.Drawing.Size(240, 16);
|
||||
this.label16.TabIndex = 6;
|
||||
this.label16.Text = "Desktop\\Quest Screenshots Desktop\\Quest Videoshots";
|
||||
this.label16.Text = "Exports to: Desktop\\Quest Screenshots";
|
||||
this.label16.TextAlign = System.Drawing.ContentAlignment.TopCenter;
|
||||
//
|
||||
// CPUComboBox
|
||||
@@ -270,9 +183,9 @@ namespace AndroidSideloader
|
||||
"2",
|
||||
"3",
|
||||
"4"});
|
||||
this.CPUComboBox.Location = new System.Drawing.Point(13, 123);
|
||||
this.CPUComboBox.Location = new System.Drawing.Point(38, 383);
|
||||
this.CPUComboBox.Name = "CPUComboBox";
|
||||
this.CPUComboBox.Size = new System.Drawing.Size(346, 26);
|
||||
this.CPUComboBox.Size = new System.Drawing.Size(232, 26);
|
||||
this.CPUComboBox.TabIndex = 2;
|
||||
this.CPUComboBox.Text = "Select CPU level (0 for default)";
|
||||
//
|
||||
@@ -291,92 +204,12 @@ namespace AndroidSideloader
|
||||
"2",
|
||||
"3",
|
||||
"4"});
|
||||
this.GPUComboBox.Location = new System.Drawing.Point(13, 94);
|
||||
this.GPUComboBox.Location = new System.Drawing.Point(38, 354);
|
||||
this.GPUComboBox.Name = "GPUComboBox";
|
||||
this.GPUComboBox.Size = new System.Drawing.Size(346, 26);
|
||||
this.GPUComboBox.Size = new System.Drawing.Size(232, 26);
|
||||
this.GPUComboBox.TabIndex = 1;
|
||||
this.GPUComboBox.Text = "Select GPU level (0 for default)";
|
||||
//
|
||||
// label7
|
||||
//
|
||||
this.label7.AutoSize = true;
|
||||
this.label7.BackColor = System.Drawing.Color.Transparent;
|
||||
this.label7.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.label7.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.label7.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label7.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.label7.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.label7.Location = new System.Drawing.Point(13, 532);
|
||||
this.label7.Name = "label7";
|
||||
this.label7.Size = new System.Drawing.Size(56, 18);
|
||||
this.label7.TabIndex = 3;
|
||||
this.label7.Text = "Fov - X";
|
||||
this.label7.Visible = false;
|
||||
//
|
||||
// label8
|
||||
//
|
||||
this.label8.AutoSize = true;
|
||||
this.label8.BackColor = System.Drawing.Color.Transparent;
|
||||
this.label8.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.label8.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.label8.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label8.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.label8.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.label8.Location = new System.Drawing.Point(191, 532);
|
||||
this.label8.Name = "label8";
|
||||
this.label8.Size = new System.Drawing.Size(55, 18);
|
||||
this.label8.TabIndex = 3;
|
||||
this.label8.Text = "Fov - Y";
|
||||
this.label8.Visible = false;
|
||||
//
|
||||
// label9
|
||||
//
|
||||
this.label9.AutoSize = true;
|
||||
this.label9.BackColor = System.Drawing.Color.Transparent;
|
||||
this.label9.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.label9.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.label9.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label9.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.label9.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.label9.Location = new System.Drawing.Point(12, 583);
|
||||
this.label9.Name = "label9";
|
||||
this.label9.Size = new System.Drawing.Size(95, 18);
|
||||
this.label9.TabIndex = 3;
|
||||
this.label9.Text = "Refresh Rate";
|
||||
this.label9.Visible = false;
|
||||
//
|
||||
// label6
|
||||
//
|
||||
this.label6.AutoSize = true;
|
||||
this.label6.BackColor = System.Drawing.Color.Transparent;
|
||||
this.label6.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.label6.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.label6.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label6.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.label6.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.label6.Location = new System.Drawing.Point(93, 484);
|
||||
this.label6.Name = "label6";
|
||||
this.label6.Size = new System.Drawing.Size(173, 18);
|
||||
this.label6.TabIndex = 3;
|
||||
this.label6.Text = "Enter Custom Username";
|
||||
this.label6.Visible = false;
|
||||
//
|
||||
// label5
|
||||
//
|
||||
this.label5.AutoSize = true;
|
||||
this.label5.BackColor = System.Drawing.Color.Transparent;
|
||||
this.label5.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.label5.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.label5.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label5.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.label5.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.label5.Location = new System.Drawing.Point(16, 434);
|
||||
this.label5.Name = "label5";
|
||||
this.label5.Size = new System.Drawing.Size(337, 18);
|
||||
this.label5.TabIndex = 3;
|
||||
this.label5.Text = "Custom Resolution Width (Height auto calculated)";
|
||||
this.label5.Visible = false;
|
||||
//
|
||||
// ResolutionLabel
|
||||
//
|
||||
this.ResolutionLabel.AutoSize = true;
|
||||
@@ -386,7 +219,7 @@ namespace AndroidSideloader
|
||||
this.ResolutionLabel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.ResolutionLabel.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.ResolutionLabel.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.ResolutionLabel.Location = new System.Drawing.Point(12, 183);
|
||||
this.ResolutionLabel.Location = new System.Drawing.Point(38, 413);
|
||||
this.ResolutionLabel.Name = "ResolutionLabel";
|
||||
this.ResolutionLabel.Size = new System.Drawing.Size(153, 18);
|
||||
this.ResolutionLabel.TabIndex = 3;
|
||||
@@ -400,76 +233,12 @@ namespace AndroidSideloader
|
||||
this.GlobalUsername.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.GlobalUsername.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.GlobalUsername.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.GlobalUsername.Location = new System.Drawing.Point(12, 701);
|
||||
this.GlobalUsername.Location = new System.Drawing.Point(33, 39);
|
||||
this.GlobalUsername.Name = "GlobalUsername";
|
||||
this.GlobalUsername.Size = new System.Drawing.Size(262, 24);
|
||||
this.GlobalUsername.Size = new System.Drawing.Size(142, 24);
|
||||
this.GlobalUsername.TabIndex = 12;
|
||||
this.GlobalUsername.TextChanged += new System.EventHandler(this.GlobalUsername_TextChanged);
|
||||
//
|
||||
// FOVy
|
||||
//
|
||||
this.FOVy.BackColor = global::AndroidSideloader.Properties.Settings.Default.TextBoxColor;
|
||||
this.FOVy.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "TextBoxColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.FOVy.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.FOVy.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.FOVy.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.FOVy.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.FOVy.Location = new System.Drawing.Point(189, 507);
|
||||
this.FOVy.Name = "FOVy";
|
||||
this.FOVy.Size = new System.Drawing.Size(169, 24);
|
||||
this.FOVy.TabIndex = 12;
|
||||
this.FOVy.Text = "0";
|
||||
this.FOVy.Visible = false;
|
||||
this.FOVy.TextChanged += new System.EventHandler(this.FOVy_TextChanged);
|
||||
//
|
||||
// FOVx
|
||||
//
|
||||
this.FOVx.BackColor = global::AndroidSideloader.Properties.Settings.Default.TextBoxColor;
|
||||
this.FOVx.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "TextBoxColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.FOVx.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.FOVx.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.FOVx.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.FOVx.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.FOVx.Location = new System.Drawing.Point(13, 507);
|
||||
this.FOVx.Name = "FOVx";
|
||||
this.FOVx.Size = new System.Drawing.Size(169, 24);
|
||||
this.FOVx.TabIndex = 11;
|
||||
this.FOVx.Text = "0";
|
||||
this.FOVx.Visible = false;
|
||||
this.FOVx.TextChanged += new System.EventHandler(this.FOVx_TextChanged);
|
||||
//
|
||||
// UsrBox
|
||||
//
|
||||
this.UsrBox.BackColor = global::AndroidSideloader.Properties.Settings.Default.TextBoxColor;
|
||||
this.UsrBox.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "TextBoxColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.UsrBox.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.UsrBox.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.UsrBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.UsrBox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.UsrBox.Location = new System.Drawing.Point(13, 459);
|
||||
this.UsrBox.Name = "UsrBox";
|
||||
this.UsrBox.Size = new System.Drawing.Size(345, 24);
|
||||
this.UsrBox.TabIndex = 10;
|
||||
this.UsrBox.Text = "0";
|
||||
this.UsrBox.Visible = false;
|
||||
this.UsrBox.TextChanged += new System.EventHandler(this.UsrBox_TextChanged);
|
||||
//
|
||||
// ResBox
|
||||
//
|
||||
this.ResBox.BackColor = global::AndroidSideloader.Properties.Settings.Default.TextBoxColor;
|
||||
this.ResBox.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "TextBoxColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.ResBox.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.ResBox.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.ResBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.ResBox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.ResBox.Location = new System.Drawing.Point(13, 409);
|
||||
this.ResBox.Name = "ResBox";
|
||||
this.ResBox.Size = new System.Drawing.Size(345, 24);
|
||||
this.ResBox.TabIndex = 9;
|
||||
this.ResBox.Text = "0";
|
||||
this.ResBox.Visible = false;
|
||||
this.ResBox.TextChanged += new System.EventHandler(this.ResBox_TextChanged);
|
||||
//
|
||||
// TextureResTextBox
|
||||
//
|
||||
this.TextureResTextBox.BackColor = global::AndroidSideloader.Properties.Settings.Default.TextBoxColor;
|
||||
@@ -478,35 +247,12 @@ namespace AndroidSideloader
|
||||
this.TextureResTextBox.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.TextureResTextBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.TextureResTextBox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.TextureResTextBox.Location = new System.Drawing.Point(13, 152);
|
||||
this.TextureResTextBox.Location = new System.Drawing.Point(38, 436);
|
||||
this.TextureResTextBox.Name = "TextureResTextBox";
|
||||
this.TextureResTextBox.Size = new System.Drawing.Size(167, 24);
|
||||
this.TextureResTextBox.Size = new System.Drawing.Size(111, 24);
|
||||
this.TextureResTextBox.TabIndex = 3;
|
||||
this.TextureResTextBox.Text = "0";
|
||||
//
|
||||
// QURfrRt
|
||||
//
|
||||
this.QURfrRt.BackColor = global::AndroidSideloader.Properties.Settings.Default.ComboBoxColor;
|
||||
this.QURfrRt.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.QURfrRt.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.QURfrRt.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "ComboBoxColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.QURfrRt.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.QURfrRt.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.QURfrRt.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.QURfrRt.FormattingEnabled = true;
|
||||
this.QURfrRt.Items.AddRange(new object[] {
|
||||
"0",
|
||||
"72",
|
||||
"90",
|
||||
"120"});
|
||||
this.QURfrRt.Location = new System.Drawing.Point(13, 555);
|
||||
this.QURfrRt.Name = "QURfrRt";
|
||||
this.QURfrRt.Size = new System.Drawing.Size(170, 26);
|
||||
this.QURfrRt.TabIndex = 13;
|
||||
this.QURfrRt.Text = "0";
|
||||
this.QURfrRt.Visible = false;
|
||||
this.QURfrRt.SelectedIndexChanged += new System.EventHandler(this.QURfrRt_SelectedIndexChanged);
|
||||
//
|
||||
// RefreshRateComboBox
|
||||
//
|
||||
this.RefreshRateComboBox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
@@ -520,9 +266,9 @@ namespace AndroidSideloader
|
||||
"72",
|
||||
"90",
|
||||
"120"});
|
||||
this.RefreshRateComboBox.Location = new System.Drawing.Point(13, 65);
|
||||
this.RefreshRateComboBox.Location = new System.Drawing.Point(38, 325);
|
||||
this.RefreshRateComboBox.Name = "RefreshRateComboBox";
|
||||
this.RefreshRateComboBox.Size = new System.Drawing.Size(346, 26);
|
||||
this.RefreshRateComboBox.Size = new System.Drawing.Size(232, 26);
|
||||
this.RefreshRateComboBox.TabIndex = 0;
|
||||
this.RefreshRateComboBox.Text = "Select refresh rate";
|
||||
//
|
||||
@@ -536,10 +282,10 @@ namespace AndroidSideloader
|
||||
this.button1.ForeColor = System.Drawing.Color.White;
|
||||
this.button1.Inactive1 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.button1.Inactive2 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.button1.Location = new System.Drawing.Point(189, 152);
|
||||
this.button1.Location = new System.Drawing.Point(185, 434);
|
||||
this.button1.Name = "button1";
|
||||
this.button1.Radius = 5;
|
||||
this.button1.Size = new System.Drawing.Size(170, 25);
|
||||
this.button1.Size = new System.Drawing.Size(85, 25);
|
||||
this.button1.Stroke = true;
|
||||
this.button1.StrokeColor = System.Drawing.Color.FromArgb(((int)(((byte)(74)))), ((int)(((byte)(74)))), ((int)(((byte)(74)))));
|
||||
this.button1.TabIndex = 19;
|
||||
@@ -547,27 +293,6 @@ namespace AndroidSideloader
|
||||
this.button1.Transparency = false;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// WifiWake
|
||||
//
|
||||
this.WifiWake.Active1 = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
|
||||
this.WifiWake.Active2 = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
|
||||
this.WifiWake.BackColor = System.Drawing.Color.Transparent;
|
||||
this.WifiWake.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.WifiWake.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F);
|
||||
this.WifiWake.ForeColor = System.Drawing.Color.White;
|
||||
this.WifiWake.Inactive1 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.WifiWake.Inactive2 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.WifiWake.Location = new System.Drawing.Point(189, 180);
|
||||
this.WifiWake.Name = "WifiWake";
|
||||
this.WifiWake.Radius = 5;
|
||||
this.WifiWake.Size = new System.Drawing.Size(170, 25);
|
||||
this.WifiWake.Stroke = true;
|
||||
this.WifiWake.StrokeColor = System.Drawing.Color.FromArgb(((int)(((byte)(74)))), ((int)(((byte)(74)))), ((int)(((byte)(74)))));
|
||||
this.WifiWake.TabIndex = 20;
|
||||
this.WifiWake.Text = "ENABLE WIFI WAKE";
|
||||
this.WifiWake.Transparency = false;
|
||||
this.WifiWake.Click += new System.EventHandler(this.WifiWake_Click);
|
||||
//
|
||||
// questVids
|
||||
//
|
||||
this.questVids.Active1 = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
|
||||
@@ -578,14 +303,14 @@ namespace AndroidSideloader
|
||||
this.questVids.ForeColor = System.Drawing.Color.White;
|
||||
this.questVids.Inactive1 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.questVids.Inactive2 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.questVids.Location = new System.Drawing.Point(189, 265);
|
||||
this.questVids.Location = new System.Drawing.Point(72, 178);
|
||||
this.questVids.Name = "questVids";
|
||||
this.questVids.Radius = 5;
|
||||
this.questVids.Size = new System.Drawing.Size(167, 25);
|
||||
this.questVids.Size = new System.Drawing.Size(165, 25);
|
||||
this.questVids.Stroke = true;
|
||||
this.questVids.StrokeColor = System.Drawing.Color.FromArgb(((int)(((byte)(74)))), ((int)(((byte)(74)))), ((int)(((byte)(74)))));
|
||||
this.questVids.TabIndex = 21;
|
||||
this.questVids.Text = "VIDEOSHOTS";
|
||||
this.questVids.Text = "RECORDINGS";
|
||||
this.questVids.Transparency = false;
|
||||
this.questVids.Click += new System.EventHandler(this.questVids_Click);
|
||||
//
|
||||
@@ -599,7 +324,7 @@ namespace AndroidSideloader
|
||||
this.questPics.ForeColor = System.Drawing.Color.White;
|
||||
this.questPics.Inactive1 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.questPics.Inactive2 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.questPics.Location = new System.Drawing.Point(15, 265);
|
||||
this.questPics.Location = new System.Drawing.Point(72, 124);
|
||||
this.questPics.Name = "questPics";
|
||||
this.questPics.Radius = 5;
|
||||
this.questPics.Size = new System.Drawing.Size(165, 25);
|
||||
@@ -610,69 +335,6 @@ namespace AndroidSideloader
|
||||
this.questPics.Transparency = false;
|
||||
this.questPics.Click += new System.EventHandler(this.questPics_Click);
|
||||
//
|
||||
// QUEnable
|
||||
//
|
||||
this.QUEnable.Active1 = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
|
||||
this.QUEnable.Active2 = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
|
||||
this.QUEnable.BackColor = System.Drawing.Color.Transparent;
|
||||
this.QUEnable.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.QUEnable.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F);
|
||||
this.QUEnable.ForeColor = System.Drawing.Color.White;
|
||||
this.QUEnable.Inactive1 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.QUEnable.Inactive2 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.QUEnable.Location = new System.Drawing.Point(189, 606);
|
||||
this.QUEnable.Name = "QUEnable";
|
||||
this.QUEnable.Radius = 5;
|
||||
this.QUEnable.Size = new System.Drawing.Size(170, 25);
|
||||
this.QUEnable.Stroke = true;
|
||||
this.QUEnable.StrokeColor = System.Drawing.Color.FromArgb(((int)(((byte)(74)))), ((int)(((byte)(74)))), ((int)(((byte)(74)))));
|
||||
this.QUEnable.TabIndex = 24;
|
||||
this.QUEnable.Text = "APPLY";
|
||||
this.QUEnable.Transparency = false;
|
||||
this.QUEnable.Click += new System.EventHandler(this.QUEnable_Click);
|
||||
//
|
||||
// deleteButton
|
||||
//
|
||||
this.deleteButton.Active1 = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
|
||||
this.deleteButton.Active2 = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
|
||||
this.deleteButton.BackColor = System.Drawing.Color.Transparent;
|
||||
this.deleteButton.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.deleteButton.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F);
|
||||
this.deleteButton.ForeColor = System.Drawing.Color.White;
|
||||
this.deleteButton.Inactive1 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.deleteButton.Inactive2 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.deleteButton.Location = new System.Drawing.Point(13, 606);
|
||||
this.deleteButton.Name = "deleteButton";
|
||||
this.deleteButton.Radius = 5;
|
||||
this.deleteButton.Size = new System.Drawing.Size(167, 25);
|
||||
this.deleteButton.Stroke = true;
|
||||
this.deleteButton.StrokeColor = System.Drawing.Color.FromArgb(((int)(((byte)(74)))), ((int)(((byte)(74)))), ((int)(((byte)(74)))));
|
||||
this.deleteButton.TabIndex = 25;
|
||||
this.deleteButton.Text = "DELETE SAVED";
|
||||
this.deleteButton.Transparency = false;
|
||||
this.deleteButton.Click += new System.EventHandler(this.DeleteButton_Click);
|
||||
//
|
||||
// ResetQU
|
||||
//
|
||||
this.ResetQU.Active1 = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
|
||||
this.ResetQU.Active2 = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
|
||||
this.ResetQU.BackColor = System.Drawing.Color.Transparent;
|
||||
this.ResetQU.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.ResetQU.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F);
|
||||
this.ResetQU.ForeColor = System.Drawing.Color.White;
|
||||
this.ResetQU.Inactive1 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.ResetQU.Inactive2 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.ResetQU.Location = new System.Drawing.Point(189, 555);
|
||||
this.ResetQU.Name = "ResetQU";
|
||||
this.ResetQU.Radius = 5;
|
||||
this.ResetQU.Size = new System.Drawing.Size(168, 28);
|
||||
this.ResetQU.Stroke = true;
|
||||
this.ResetQU.StrokeColor = System.Drawing.Color.FromArgb(((int)(((byte)(74)))), ((int)(((byte)(74)))), ((int)(((byte)(74)))));
|
||||
this.ResetQU.TabIndex = 26;
|
||||
this.ResetQU.Text = "RESET ALL FIELDS";
|
||||
this.ResetQU.Transparency = false;
|
||||
this.ResetQU.Click += new System.EventHandler(this.ResetQU_click);
|
||||
//
|
||||
// button3
|
||||
//
|
||||
this.button3.Active1 = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
|
||||
@@ -683,7 +345,7 @@ namespace AndroidSideloader
|
||||
this.button3.ForeColor = System.Drawing.Color.White;
|
||||
this.button3.Inactive1 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.button3.Inactive2 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.button3.Location = new System.Drawing.Point(278, 700);
|
||||
this.button3.Location = new System.Drawing.Point(194, 38);
|
||||
this.button3.Name = "button3";
|
||||
this.button3.Radius = 5;
|
||||
this.button3.Size = new System.Drawing.Size(81, 25);
|
||||
@@ -694,55 +356,51 @@ namespace AndroidSideloader
|
||||
this.button3.Transparency = false;
|
||||
this.button3.Click += new System.EventHandler(this.button3_Click);
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.BackColor = System.Drawing.Color.Transparent;
|
||||
this.label3.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label3.ForeColor = System.Drawing.Color.LightSteelBlue;
|
||||
this.label3.Location = new System.Drawing.Point(37, 206);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(235, 16);
|
||||
this.label3.TabIndex = 28;
|
||||
this.label3.Text = "Exports to: Desktop\\Quest Recordings";
|
||||
this.label3.TextAlign = System.Drawing.ContentAlignment.TopCenter;
|
||||
//
|
||||
// QuestForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
|
||||
this.BackgroundImage = global::AndroidSideloader.Properties.Resources.pattern_cubes_1_1_1_0_0_0_1__000000_212121;
|
||||
this.ClientSize = new System.Drawing.Size(370, 737);
|
||||
this.ClientSize = new System.Drawing.Size(309, 486);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.button3);
|
||||
this.Controls.Add(this.ResetQU);
|
||||
this.Controls.Add(this.deleteButton);
|
||||
this.Controls.Add(this.QUEnable);
|
||||
this.Controls.Add(this.questPics);
|
||||
this.Controls.Add(this.questVids);
|
||||
this.Controls.Add(this.WifiWake);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.label15);
|
||||
this.Controls.Add(this.label14);
|
||||
this.Controls.Add(this.label10);
|
||||
this.Controls.Add(this.splitter1);
|
||||
this.Controls.Add(this.DeleteShots);
|
||||
this.Controls.Add(this.QUon);
|
||||
this.Controls.Add(this.label13);
|
||||
this.Controls.Add(this.label4);
|
||||
this.Controls.Add(this.label16);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label11);
|
||||
this.Controls.Add(this.label12);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.CPUComboBox);
|
||||
this.Controls.Add(this.GPUComboBox);
|
||||
this.Controls.Add(this.label7);
|
||||
this.Controls.Add(this.label8);
|
||||
this.Controls.Add(this.label9);
|
||||
this.Controls.Add(this.label6);
|
||||
this.Controls.Add(this.label5);
|
||||
this.Controls.Add(this.ResolutionLabel);
|
||||
this.Controls.Add(this.GlobalUsername);
|
||||
this.Controls.Add(this.FOVy);
|
||||
this.Controls.Add(this.FOVx);
|
||||
this.Controls.Add(this.UsrBox);
|
||||
this.Controls.Add(this.ResBox);
|
||||
this.Controls.Add(this.TextureResTextBox);
|
||||
this.Controls.Add(this.QURfrRt);
|
||||
this.Controls.Add(this.RefreshRateComboBox);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.MaximumSize = new System.Drawing.Size(386, 776);
|
||||
this.MinimumSize = new System.Drawing.Size(386, 776);
|
||||
this.MaximumSize = new System.Drawing.Size(325, 525);
|
||||
this.MinimumSize = new System.Drawing.Size(325, 525);
|
||||
this.Name = "QuestForm";
|
||||
this.ShowIcon = false;
|
||||
this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
|
||||
@@ -764,37 +422,19 @@ namespace AndroidSideloader
|
||||
private System.Windows.Forms.ComboBox CPUComboBox;
|
||||
private Label label1;
|
||||
private Label label2;
|
||||
private Label label3;
|
||||
private Label label4;
|
||||
private ComboBox QURfrRt;
|
||||
private TextBox ResBox;
|
||||
private TextBox UsrBox;
|
||||
private TextBox FOVx;
|
||||
private TextBox FOVy;
|
||||
private Label label5;
|
||||
private Label label6;
|
||||
private Label label7;
|
||||
private Label label8;
|
||||
private Label label9;
|
||||
private Label label11;
|
||||
private CheckBox QUon;
|
||||
private Label label12;
|
||||
private Label label13;
|
||||
private CheckBox DeleteShots;
|
||||
private Splitter splitter1;
|
||||
private Label label10;
|
||||
private Label label14;
|
||||
private Label label15;
|
||||
private Label label16;
|
||||
private TextBox GlobalUsername;
|
||||
private RoundButton button1;
|
||||
private RoundButton WifiWake;
|
||||
private RoundButton questVids;
|
||||
private RoundButton questPics;
|
||||
private RoundButton QUEnable;
|
||||
private RoundButton deleteButton;
|
||||
private RoundButton ResetQU;
|
||||
private RoundButton button3;
|
||||
private Label label3;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
168
QuestForm.cs
168
QuestForm.cs
@@ -9,7 +9,6 @@ namespace AndroidSideloader
|
||||
public static int length = 0;
|
||||
public static string[] result;
|
||||
public bool settingsexist = false;
|
||||
public static bool QUSon = false;
|
||||
public bool delsh = false;
|
||||
public QuestForm()
|
||||
{
|
||||
@@ -64,68 +63,11 @@ namespace AndroidSideloader
|
||||
}
|
||||
|
||||
|
||||
|
||||
public void ResetQU_click(object sender, EventArgs e)
|
||||
{
|
||||
ResBox.Text = "0";
|
||||
UsrBox.Text = "Change Me";
|
||||
FOVx.Text = "0";
|
||||
FOVy.Text = "0";
|
||||
QURfrRt.SelectedIndex = 0;
|
||||
}
|
||||
|
||||
private void DeleteShots_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
delsh = DeleteShots.Checked;
|
||||
}
|
||||
private void QUon_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (QUon.Checked)
|
||||
{
|
||||
ResBox.Visible = true;
|
||||
UsrBox.Visible = true;
|
||||
FOVx.Visible = true;
|
||||
FOVy.Visible = true;
|
||||
QURfrRt.Visible = true;
|
||||
ResetQU.Visible = true;
|
||||
QUEnable.Visible = true;
|
||||
label5.Visible = true;
|
||||
label6.Visible = true;
|
||||
label7.Visible = true;
|
||||
label8.Visible = true;
|
||||
label9.Visible = true;
|
||||
label10.Visible = true;
|
||||
deleteButton.Visible = true;
|
||||
ResBox.Text = Properties.Settings.Default.QUres;
|
||||
UsrBox.Text = Properties.Settings.Default.QUname;
|
||||
FOVy.Text = Properties.Settings.Default.QUy;
|
||||
FOVx.Text = Properties.Settings.Default.QUx;
|
||||
QURfrRt.SelectedValue = Properties.Settings.Default.QUhz;
|
||||
Properties.Settings.Default.QUturnedon = true;
|
||||
}
|
||||
else if (!QUon.Checked)
|
||||
{
|
||||
ResBox.Visible = false;
|
||||
UsrBox.Visible = false;
|
||||
FOVx.Visible = false;
|
||||
FOVy.Visible = false;
|
||||
QURfrRt.Visible = false;
|
||||
ResetQU.Visible = false;
|
||||
QUEnable.Visible = false;
|
||||
label5.Visible = false;
|
||||
label6.Visible = false;
|
||||
label7.Visible = false;
|
||||
label8.Visible = false;
|
||||
label9.Visible = false;
|
||||
label10.Visible = false;
|
||||
deleteButton.Visible = false;
|
||||
Properties.Settings.Default.QUturnedon = false;
|
||||
_ = MessageBox.Show("Ok, Deleted your custom settings file.\nIf you would like to re-enable return here and apply settings again");
|
||||
File.Delete($"{Environment.CurrentDirectory}\\Config.Json");
|
||||
File.Delete($"{Environment.CurrentDirectory}\\delete_settings");
|
||||
}
|
||||
|
||||
}
|
||||
private static readonly Random random = new Random();
|
||||
private static readonly object syncLock = new object();
|
||||
public static int RandomNumber(int min, int max)
|
||||
@@ -135,60 +77,12 @@ namespace AndroidSideloader
|
||||
return random.Next(min, max);
|
||||
}
|
||||
}
|
||||
private void QUEnable_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
settingsexist = true;
|
||||
_ = MessageBox.Show("OK, any -QU packages installed will have these settings applied!\nTo delete settings: goto main app window, select a game with top menu, and click \"Remove QU Setting\"");
|
||||
if (QUon.Checked)
|
||||
{
|
||||
Properties.Settings.Default.QUturnedon = true;
|
||||
Random r = new Random();
|
||||
|
||||
int x = r.Next(999999999);
|
||||
int y = r.Next(9999999);
|
||||
|
||||
long sum = (y * (long)1000000000) + x;
|
||||
|
||||
int x2 = r.Next(999999999);
|
||||
int y2 = r.Next(9999999);
|
||||
|
||||
long sum2 = (y2 * (long)1000000000) + x2;
|
||||
|
||||
QUSon = true;
|
||||
|
||||
string selected = QURfrRt.GetItemText(QURfrRt.SelectedItem);
|
||||
|
||||
Properties.Settings.Default.QUString = $"\"refresh_rate\":{selected},\"eye_texture_width\":{ResBox.Text},\"fov_x\":{FOVx.Text},\"fov_y\":{FOVy.Text},\"username\":\"{UsrBox.Text}\"}}";
|
||||
Properties.Settings.Default.QUStringF = $"{{\"user_id\":{sum},\"app_id\":\"{sum2}\",";
|
||||
Properties.Settings.Default.Save();
|
||||
File.WriteAllText($"{Properties.Settings.Default.MainDir}\\delete_settings", "");
|
||||
string boff = Properties.Settings.Default.QUStringF + Properties.Settings.Default.QUString;
|
||||
File.WriteAllText($"{Properties.Settings.Default.MainDir}\\config.json", boff);
|
||||
}
|
||||
else
|
||||
{
|
||||
Properties.Settings.Default.QUturnedon = false;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void QuestForm_FormClosed(object sender, FormClosedEventArgs e)
|
||||
{
|
||||
if (QUon.Checked)
|
||||
{
|
||||
Properties.Settings.Default.QUsett = true;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
if (!QUon.Checked)
|
||||
{
|
||||
Properties.Settings.Default.QUsett = false;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
if (DeleteShots.Checked)
|
||||
{
|
||||
Properties.Settings.Default.delsh = true;
|
||||
@@ -203,54 +97,9 @@ namespace AndroidSideloader
|
||||
private void QuestForm_Load(object sender, EventArgs e)
|
||||
{
|
||||
DeleteShots.Checked = Properties.Settings.Default.delsh;
|
||||
if (Properties.Settings.Default.QUsett)
|
||||
{
|
||||
ResBox.Text = Properties.Settings.Default.QUres;
|
||||
UsrBox.Text = Properties.Settings.Default.QUname;
|
||||
FOVy.Text = Properties.Settings.Default.QUy;
|
||||
FOVx.Text = Properties.Settings.Default.QUx;
|
||||
QURfrRt.Text = Properties.Settings.Default.QUhz;
|
||||
QUon.Checked = true;
|
||||
if (settingsexist)
|
||||
{
|
||||
QUSon = true;
|
||||
}
|
||||
}
|
||||
GlobalUsername.Text = Properties.Settings.Default.GlobalUsername;
|
||||
}
|
||||
|
||||
private void ResBox_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
Properties.Settings.Default.QUres = ResBox.Text;
|
||||
Properties.Settings.Default.Save();
|
||||
|
||||
}
|
||||
|
||||
private void UsrBox_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
Properties.Settings.Default.QUname = UsrBox.Text;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
|
||||
private void FOVx_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
Properties.Settings.Default.QUx = FOVx.Text;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
|
||||
private void FOVy_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
Properties.Settings.Default.QUy = FOVy.Text;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
|
||||
private void QURfrRt_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
string selected = QURfrRt.GetItemText(QURfrRt.SelectedItem);
|
||||
Properties.Settings.Default.QUhz = selected;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
private void DeleteButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
@@ -284,14 +133,14 @@ namespace AndroidSideloader
|
||||
private void questVids_Click(object sender, EventArgs e)
|
||||
{
|
||||
string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
|
||||
if (!Directory.Exists($"{path}\\Quest VideoShots"))
|
||||
if (!Directory.Exists($"{path}\\Quest Recordings"))
|
||||
{
|
||||
_ = Directory.CreateDirectory($"{path}\\Quest VideoShots");
|
||||
_ = Directory.CreateDirectory($"{path}\\Quest Recordings");
|
||||
}
|
||||
|
||||
_ = MessageBox.Show("Please wait until you get the message that the transfer has finished.");;
|
||||
_ = MessageBox.Show("Please wait until you get the message that the transfer has finished.");
|
||||
Program.form.changeTitle("Pulling files...");
|
||||
_ = ADB.RunAdbCommandToString($"pull \"/sdcard/Oculus/Videoshots\" \"{path}\\Quest VideoShots\"");
|
||||
_ = ADB.RunAdbCommandToString($"pull \"/sdcard/Oculus/Videoshots\" \"{path}\\Quest Recordings\"");
|
||||
if (delsh)
|
||||
{
|
||||
DialogResult dialogResult = MessageBox.Show("You have chosen to delete files from headset after transferring, so be sure to move them from your desktop to somewhere safe!", "Warning!", MessageBoxButtons.OKCancel);
|
||||
@@ -301,7 +150,7 @@ namespace AndroidSideloader
|
||||
_ = ADB.RunAdbCommandToString("shell mkdir /sdcard/Oculus/Videoshots");
|
||||
}
|
||||
}
|
||||
_ = MessageBox.Show("Transfer finished! VideoShots can be found in a folder named Quest VideoShots on your desktop!");
|
||||
_ = MessageBox.Show("Transfer finished! Recordings can be found in a folder named Quest Recordings on your desktop!");
|
||||
Program.form.changeTitle("Done!");
|
||||
}
|
||||
private void button3_Click(object sender, EventArgs e)
|
||||
@@ -335,13 +184,6 @@ namespace AndroidSideloader
|
||||
return base.ProcessDialogKey(keyData);
|
||||
}
|
||||
|
||||
private void WifiWake_Click(object sender, EventArgs e)
|
||||
{
|
||||
_ = ADB.RunAdbCommandToString("shell settings put global wifi_wakeup_available 1");
|
||||
_ = ADB.RunAdbCommandToString("shell settings put global wifi_wakeup_enabled 1");
|
||||
_ = MessageBox.Show("Wake on Wifi enabled!\n\nNOTE: This requires having wireless ADB enabled to work. (Obviously)");
|
||||
}
|
||||
|
||||
private void GlobalUsername_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
button3.Enabled = GlobalUsername.TextLength > 0;
|
||||
|
||||
30
RCLONE.cs
30
RCLONE.cs
@@ -94,12 +94,12 @@ namespace AndroidSideloader
|
||||
|
||||
_ = Logger.Log($"Running Rclone command: {logcmd}");
|
||||
|
||||
rclone.StartInfo.FileName = Environment.CurrentDirectory + "\\rclone\\rclone.exe";
|
||||
rclone.StartInfo.FileName = Path.Combine(Environment.CurrentDirectory, "rclone", "rclone.exe");
|
||||
rclone.StartInfo.Arguments = command;
|
||||
rclone.StartInfo.RedirectStandardInput = true;
|
||||
rclone.StartInfo.RedirectStandardError = true;
|
||||
rclone.StartInfo.RedirectStandardOutput = true;
|
||||
rclone.StartInfo.WorkingDirectory = Environment.CurrentDirectory + "\\rclone";
|
||||
rclone.StartInfo.WorkingDirectory = Path.Combine(Environment.CurrentDirectory, "rclone");
|
||||
rclone.StartInfo.CreateNoWindow = true;
|
||||
// Display RCLONE Window if the binary is being run in Debug Mode.
|
||||
if (MainForm.debugMode)
|
||||
@@ -118,10 +118,13 @@ namespace AndroidSideloader
|
||||
|
||||
if (error.Contains("There is not enough space"))
|
||||
{
|
||||
_ = FlexibleMessageBox.Show(Program.form, $"There isn't enough disk space to download this game.\r\nPlease ensure you have at least 200MB more the game size available in {Environment.CurrentDirectory} and try again.",
|
||||
Program.form.Invoke(() =>
|
||||
{
|
||||
_ = FlexibleMessageBox.Show(Program.form, $"There isn't enough disk space to download this game.\r\nPlease ensure you have at least 200MB more the game size available in {Properties.Settings.Default.downloadDir} and try again.",
|
||||
"NOT ENOUGH SPACE",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Error);
|
||||
});
|
||||
return new ProcessOutput("Download failed.", "");
|
||||
}
|
||||
|
||||
@@ -150,7 +153,7 @@ namespace AndroidSideloader
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(error))
|
||||
{
|
||||
_ = Logger.Log($"Rclone error: {error}\n", LogLevel.ERROR);
|
||||
_ = Logger.Log($"Rclone error: {error}\n", LogLevel.ERROR);
|
||||
}
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(output))
|
||||
@@ -188,12 +191,12 @@ namespace AndroidSideloader
|
||||
|
||||
command += " --checkers 0 --no-check-dest --retries 1";
|
||||
|
||||
rclone.StartInfo.FileName = Environment.CurrentDirectory + "\\rclone\\rclone.exe";
|
||||
rclone.StartInfo.FileName = Path.Combine(Environment.CurrentDirectory, "rclone", "rclone.exe");
|
||||
rclone.StartInfo.Arguments = command;
|
||||
rclone.StartInfo.RedirectStandardInput = true;
|
||||
rclone.StartInfo.RedirectStandardError = true;
|
||||
rclone.StartInfo.RedirectStandardOutput = true;
|
||||
rclone.StartInfo.WorkingDirectory = Environment.CurrentDirectory + "\\rclone";
|
||||
rclone.StartInfo.WorkingDirectory = Path.Combine(Environment.CurrentDirectory, "rclone");
|
||||
rclone.StartInfo.CreateNoWindow = true;
|
||||
// Display RCLONE Window if the binary is being run in Debug Mode.
|
||||
if (MainForm.debugMode)
|
||||
@@ -263,13 +266,13 @@ namespace AndroidSideloader
|
||||
|
||||
//set http source & args
|
||||
command += $" --http-url {MainForm.PublicConfigFile.BaseUri} {MainForm.PublicMirrorExtraArgs}";
|
||||
|
||||
rclone.StartInfo.FileName = Environment.CurrentDirectory + "\\rclone\\rclone.exe";
|
||||
|
||||
rclone.StartInfo.FileName = Path.Combine(Environment.CurrentDirectory, "rclone", "rclone.exe");
|
||||
rclone.StartInfo.Arguments = command;
|
||||
rclone.StartInfo.RedirectStandardInput = true;
|
||||
rclone.StartInfo.RedirectStandardError = true;
|
||||
rclone.StartInfo.RedirectStandardOutput = true;
|
||||
rclone.StartInfo.WorkingDirectory = Environment.CurrentDirectory + "\\rclone";
|
||||
rclone.StartInfo.WorkingDirectory = Path.Combine(Environment.CurrentDirectory, "rclone");
|
||||
rclone.StartInfo.CreateNoWindow = true;
|
||||
// Display RCLONE Window if the binary is being run in Debug Mode.
|
||||
if (MainForm.debugMode)
|
||||
@@ -288,18 +291,21 @@ namespace AndroidSideloader
|
||||
|
||||
if (error.Contains("There is not enough space"))
|
||||
{
|
||||
_ = FlexibleMessageBox.Show(Program.form, $"There isn't enough disk space to download this game.\r\nPlease ensure you have at least 2x the game size available in {Environment.CurrentDirectory} and try again.",
|
||||
Program.form.Invoke(() =>
|
||||
{
|
||||
_ = FlexibleMessageBox.Show(Program.form, $"There isn't enough disk space to download this game.\r\nPlease ensure you have at least 2x the game size available in {Properties.Settings.Default.downloadDir} and try again.",
|
||||
"NOT ENOUGH SPACE",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Error);
|
||||
});
|
||||
return new ProcessOutput("Download failed.", string.Empty);
|
||||
}
|
||||
|
||||
if (error.Contains("Only one usage of each socket address (protocol/network address/port) is normally permitted")) {
|
||||
if (error.Contains("Only one usage of each socket address (protocol/network address/port) is normally permitted"))
|
||||
{
|
||||
_ = Logger.Log(error, LogLevel.ERROR);
|
||||
return new ProcessOutput("Failed to fetch from public mirror.", "Failed to fetch from public mirror.\nYou may have a running RCLONE Task!\nCheck your Task Manager, Sort by Network Usage, and kill the process Rsync for Cloud Storage/Rclone");
|
||||
}
|
||||
|
||||
else if (error.Contains("400 Bad Request")
|
||||
|| error.Contains("cannot fetch token")
|
||||
|| error.Contains("authError")
|
||||
|
||||
@@ -10,6 +10,6 @@ androidsideloader uses the GPL license, any forks of it must have their source c
|
||||
|
||||
This app may be buggy and have problems.
|
||||
|
||||
### This app might get detected as malware, however both the sideloader and the sideloader launcher are open source. And obviously, it isn't.
|
||||
See:
|
||||
https://www.virustotal.com/gui/file/46b6e24a03a6670dfbbde6e6f06caac05f2f9486115ef7bd77e0b568df7e5342/detection
|
||||
### This app might get detected as malware, however both the sideloader and the sideloader launcher are open source.
|
||||
Rookie 1.25.1 VirusTotal Scan (1/72)-
|
||||
https://www.virustotal.com/gui/file/dc3ed59057d508646a06a978c44ae72d473fd678129483ab186202046cbc713f
|
||||
|
||||
52
SettingsForm.Designer.cs
generated
52
SettingsForm.Designer.cs
generated
@@ -51,6 +51,8 @@ namespace AndroidSideloader
|
||||
this.resetSettingsButton = new AndroidSideloader.RoundButton();
|
||||
this.applyButton = new AndroidSideloader.RoundButton();
|
||||
this.virtualFilesystemCompatibilityCheckbox = new System.Windows.Forms.CheckBox();
|
||||
this.openBackupDirectory = new AndroidSideloader.RoundButton();
|
||||
this.openDownloadDirectory = new AndroidSideloader.RoundButton();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// checkForUpdatesCheckBox
|
||||
@@ -375,13 +377,57 @@ namespace AndroidSideloader
|
||||
this.virtualFilesystemCompatibilityCheckbox.UseVisualStyleBackColor = true;
|
||||
this.virtualFilesystemCompatibilityCheckbox.CheckedChanged += new System.EventHandler(this.virtualFilesystemCompatibilityCheckbox_CheckedChanged);
|
||||
//
|
||||
// openBackupDirectory
|
||||
//
|
||||
this.openBackupDirectory.Active1 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
|
||||
this.openBackupDirectory.Active2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
|
||||
this.openBackupDirectory.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.openBackupDirectory.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.openBackupDirectory.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F);
|
||||
this.openBackupDirectory.ForeColor = System.Drawing.Color.White;
|
||||
this.openBackupDirectory.Inactive1 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.openBackupDirectory.Inactive2 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.openBackupDirectory.Location = new System.Drawing.Point(27, 616);
|
||||
this.openBackupDirectory.Name = "openBackupDirectory";
|
||||
this.openBackupDirectory.Radius = 5;
|
||||
this.openBackupDirectory.Size = new System.Drawing.Size(285, 31);
|
||||
this.openBackupDirectory.Stroke = true;
|
||||
this.openBackupDirectory.StrokeColor = System.Drawing.Color.FromArgb(((int)(((byte)(74)))), ((int)(((byte)(74)))), ((int)(((byte)(74)))));
|
||||
this.openBackupDirectory.TabIndex = 28;
|
||||
this.openBackupDirectory.Text = "Open Backup Directory";
|
||||
this.openBackupDirectory.Transparency = false;
|
||||
this.openBackupDirectory.Click += new System.EventHandler(this.openBackupDirectory_Click);
|
||||
//
|
||||
// openDownloadDirectory
|
||||
//
|
||||
this.openDownloadDirectory.Active1 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
|
||||
this.openDownloadDirectory.Active2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
|
||||
this.openDownloadDirectory.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.openDownloadDirectory.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.openDownloadDirectory.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F);
|
||||
this.openDownloadDirectory.ForeColor = System.Drawing.Color.White;
|
||||
this.openDownloadDirectory.Inactive1 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.openDownloadDirectory.Inactive2 = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(25)))), ((int)(((byte)(25)))));
|
||||
this.openDownloadDirectory.Location = new System.Drawing.Point(27, 579);
|
||||
this.openDownloadDirectory.Name = "openDownloadDirectory";
|
||||
this.openDownloadDirectory.Radius = 5;
|
||||
this.openDownloadDirectory.Size = new System.Drawing.Size(285, 31);
|
||||
this.openDownloadDirectory.Stroke = true;
|
||||
this.openDownloadDirectory.StrokeColor = System.Drawing.Color.FromArgb(((int)(((byte)(74)))), ((int)(((byte)(74)))), ((int)(((byte)(74)))));
|
||||
this.openDownloadDirectory.TabIndex = 27;
|
||||
this.openDownloadDirectory.Text = "Open Download Directory";
|
||||
this.openDownloadDirectory.Transparency = false;
|
||||
this.openDownloadDirectory.Click += new System.EventHandler(this.openDownloadDirectory_Click);
|
||||
//
|
||||
// SettingsForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = global::AndroidSideloader.Properties.Settings.Default.BackColor;
|
||||
this.BackgroundImage = global::AndroidSideloader.Properties.Resources.pattern_cubes_1_1_1_0_0_0_1__000000_212121;
|
||||
this.ClientSize = new System.Drawing.Size(339, 586);
|
||||
this.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("$this.BackgroundImage")));
|
||||
this.ClientSize = new System.Drawing.Size(339, 665);
|
||||
this.Controls.Add(this.openBackupDirectory);
|
||||
this.Controls.Add(this.openDownloadDirectory);
|
||||
this.Controls.Add(this.virtualFilesystemCompatibilityCheckbox);
|
||||
this.Controls.Add(this.singleThread);
|
||||
this.Controls.Add(this.setBackupDirectory);
|
||||
@@ -441,5 +487,7 @@ namespace AndroidSideloader
|
||||
private System.Windows.Forms.FolderBrowserDialog backupDirectorySetter;
|
||||
private System.Windows.Forms.CheckBox singleThread;
|
||||
private System.Windows.Forms.CheckBox virtualFilesystemCompatibilityCheckbox;
|
||||
private RoundButton openBackupDirectory;
|
||||
private RoundButton openDownloadDirectory;
|
||||
}
|
||||
}
|
||||
@@ -84,7 +84,7 @@ namespace AndroidSideloader
|
||||
private void applyButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
Properties.Settings.Default.Save();
|
||||
_ = FlexibleMessageBox.Show(this, "Settings applied!");
|
||||
this.Close();
|
||||
}
|
||||
|
||||
private void checkForUpdatesCheckBox_CheckedChanged(object sender, EventArgs e)
|
||||
@@ -245,6 +245,18 @@ namespace AndroidSideloader
|
||||
Properties.Settings.Default.virtualFilesystemCompatibility = virtualFilesystemCompatibilityCheckbox.Checked;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
|
||||
private void openDownloadDirectory_Click(object sender, EventArgs e)
|
||||
{
|
||||
string pathToOpen = Properties.Settings.Default.customDownloadDir ? $"{Properties.Settings.Default.downloadDir}" : $"{Environment.CurrentDirectory}";
|
||||
MainForm.OpenDirectory(pathToOpen);
|
||||
}
|
||||
|
||||
private void openBackupDirectory_Click(object sender, EventArgs e)
|
||||
{
|
||||
string pathToOpen = Properties.Settings.Default.customBackupDir ? $"{Path.Combine((Properties.Settings.Default.backupDir), $"Rookie Backups")}" : $"{Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), $"Rookie Backups")}";
|
||||
MainForm.OpenDirectory(pathToOpen);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
1885
SettingsForm.resx
1885
SettingsForm.resx
File diff suppressed because it is too large
Load Diff
@@ -2,6 +2,7 @@
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Management;
|
||||
using System.Net;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Windows.Forms;
|
||||
@@ -13,6 +14,33 @@ namespace AndroidSideloader
|
||||
public static string TempFolder = Path.Combine(Environment.CurrentDirectory, "temp");
|
||||
public static string CrashLogPath = "crashlog.txt";
|
||||
|
||||
public static void killWebView2()
|
||||
{
|
||||
var parentProcessId = Process.GetCurrentProcess().Id;
|
||||
var processes = Process.GetProcessesByName("msedgewebview2");
|
||||
|
||||
foreach (var process in processes)
|
||||
{
|
||||
try
|
||||
{
|
||||
using (ManagementObject obj = new ManagementObject($"win32_process.handle='{process.Id}'"))
|
||||
{
|
||||
obj.Get();
|
||||
var ppid = Convert.ToInt32(obj["ParentProcessId"]);
|
||||
|
||||
if (ppid == parentProcessId)
|
||||
{
|
||||
process.Kill();
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_ = Logger.Log($"Exception occured while attempting to shut down WebView2 with exception message: {ex.Message}", LogLevel.ERROR);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//push user.json to device (required for some devices like oculus quest)
|
||||
public static void PushUserJsons()
|
||||
{
|
||||
@@ -265,49 +293,49 @@ namespace AndroidSideloader
|
||||
if (!File.Exists("Sideloader Launcher.exe"))
|
||||
{
|
||||
currentAccessedWebsite = "github";
|
||||
_ = Logger.Log($"Missing 'Sideloader Launcher.exe'. Attempting to download from {currentAccessedWebsite}");
|
||||
client.DownloadFile("https://github.com/VRPirates/rookie/raw/master/Sideloader%20Launcher.exe", "Sideloader Launcher.exe");
|
||||
_ = Logger.Log($"'Sideloader Launcher.exe' download successful");
|
||||
}
|
||||
|
||||
if (!File.Exists("Rookie Offline.cmd"))
|
||||
{
|
||||
currentAccessedWebsite = "github";
|
||||
_ = Logger.Log($"Missing 'Rookie Offline.cmd'. Attempting to download from {currentAccessedWebsite}");
|
||||
client.DownloadFile("https://github.com/VRPirates/rookie/raw/master/Rookie%20Offline.cmd", "Rookie Offline.cmd");
|
||||
_ = Logger.Log($"'Rookie Offline.cmd' download successful");
|
||||
}
|
||||
|
||||
if (!File.Exists($"{Path.GetPathRoot(Environment.SystemDirectory)}RSL\\platform-tools\\aug2021.txt") || !File.Exists($"{Path.GetPathRoot(Environment.SystemDirectory)}RSL\\platform-tools\\adb.exe")) //if adb is not updated, download and auto extract
|
||||
if (!File.Exists($"{Path.GetPathRoot(Environment.SystemDirectory)}RSL\\platform-tools\\adb.exe")) //if adb is not updated, download and auto extract
|
||||
{
|
||||
if (Directory.Exists($"{Path.GetPathRoot(Environment.SystemDirectory)}RSL\\2.8.2"))
|
||||
{
|
||||
Directory.Delete($"{Path.GetPathRoot(Environment.SystemDirectory)}RSL\\2.8.2", true);
|
||||
}
|
||||
|
||||
if (Directory.Exists($"{Properties.Settings.Default.MainDir}\\adb"))
|
||||
{
|
||||
Directory.Delete($"{Properties.Settings.Default.MainDir}\\adb", true);
|
||||
}
|
||||
|
||||
if (!Directory.Exists($"{Path.GetPathRoot(Environment.SystemDirectory)}RSL\\platform-tools"))
|
||||
{
|
||||
_ = Directory.CreateDirectory($"{Path.GetPathRoot(Environment.SystemDirectory)}RSL\\platform-tools");
|
||||
}
|
||||
|
||||
currentAccessedWebsite = "github";
|
||||
client.DownloadFile("https://github.com/VRPirates/rookie/raw/master/adb2.zip", "Ad.7z");
|
||||
Utilities.Zip.ExtractFile(Environment.CurrentDirectory + "\\Ad.7z", $"{Path.GetPathRoot(Environment.SystemDirectory)}RSL\\platform-tools");
|
||||
File.Delete("Ad.7z");
|
||||
_ = Logger.Log($"Missing adb within {Path.GetPathRoot(Environment.SystemDirectory)}RSL\\platform-tools. Attempting to download from {currentAccessedWebsite}");
|
||||
client.DownloadFile("https://github.com/VRPirates/rookie/raw/master/adb2.zip", "_adb.7z");
|
||||
Utilities.Zip.ExtractFile(Path.Combine(Environment.CurrentDirectory, "_adb.7z"), $"{Path.GetPathRoot(Environment.SystemDirectory)}RSL\\platform-tools");
|
||||
File.Delete("_adb.7z");
|
||||
_ = Logger.Log($"adb download successful");
|
||||
}
|
||||
|
||||
if (!Directory.Exists(Environment.CurrentDirectory + "\\rclone"))
|
||||
if (!Directory.Exists(Path.Combine(Environment.CurrentDirectory, "rclone")))
|
||||
{
|
||||
currentAccessedWebsite = "rclone";
|
||||
_ = Logger.Log($"Missing rclone. Attempting to download from {currentAccessedWebsite}.org");
|
||||
string url = Environment.Is64BitOperatingSystem
|
||||
? "https://downloads.rclone.org/v1.62.2/rclone-v1.62.2-windows-amd64.zip"
|
||||
: "https://downloads.rclone.org/v1.62.2/rclone-v1.62.2-windows-386.zip";
|
||||
//Since sideloader is build for x86, it should work on both x86 and x64 so we download the according rclone version
|
||||
|
||||
_ = Logger.Log("Begin download rclone");
|
||||
client.DownloadFile(url, "rclone.zip");
|
||||
_ = Logger.Log("Complete download rclone");
|
||||
|
||||
Utilities.Zip.ExtractFile(Environment.CurrentDirectory + "\\rclone.zip", Environment.CurrentDirectory);
|
||||
_ = Logger.Log($"Extract {Environment.CurrentDirectory}\\rclone.zip");
|
||||
Utilities.Zip.ExtractFile(Path.Combine(Environment.CurrentDirectory, "rclone.zip"), Environment.CurrentDirectory);
|
||||
|
||||
File.Delete("rclone.zip");
|
||||
|
||||
@@ -320,9 +348,11 @@ namespace AndroidSideloader
|
||||
break; //only 1 rclone folder
|
||||
}
|
||||
}
|
||||
_ = Logger.Log($"rclone download successful");
|
||||
}
|
||||
else
|
||||
{
|
||||
_ = Logger.Log($"Checking for Local rclone...");
|
||||
string pathToRclone = Path.Combine(Environment.CurrentDirectory, "rclone", "rclone.exe");
|
||||
if (File.Exists(pathToRclone))
|
||||
{
|
||||
@@ -333,7 +363,7 @@ namespace AndroidSideloader
|
||||
{
|
||||
if (version != "1.62.2")
|
||||
{
|
||||
Logger.Log("RCLONE Version not matching! Downloading required version.", LogLevel.WARNING);
|
||||
Logger.Log($"RCLONE Version does not match ({version})! Downloading required version (1.62.2)", LogLevel.WARNING);
|
||||
File.Delete(pathToRclone);
|
||||
currentAccessedWebsite = "rclone";
|
||||
string architecture = Environment.Is64BitOperatingSystem ? "amd64" : "386";
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using AndroidSideloader.Utilities;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
@@ -41,9 +42,9 @@ namespace AndroidSideloader
|
||||
*/
|
||||
public static List<string[]> games = new List<string[]>();
|
||||
|
||||
public static string Nouns = Environment.CurrentDirectory + "\\nouns";
|
||||
public static string ThumbnailsFolder = Environment.CurrentDirectory + "\\thumbnails";
|
||||
public static string NotesFolder = Environment.CurrentDirectory + "\\notes";
|
||||
public static string Nouns = Path.Combine(Environment.CurrentDirectory, "nouns");
|
||||
public static string ThumbnailsFolder = Path.Combine(Environment.CurrentDirectory, "thumbnails");
|
||||
public static string NotesFolder = Path.Combine(Environment.CurrentDirectory, "notes");
|
||||
|
||||
public static void UpdateNouns(string remote)
|
||||
{
|
||||
@@ -76,7 +77,7 @@ namespace AndroidSideloader
|
||||
try
|
||||
{
|
||||
_ = Logger.Log($"Extracting Metadata");
|
||||
Zip.ExtractFile($"{Environment.CurrentDirectory}\\meta.7z", $"{Environment.CurrentDirectory}\\meta",
|
||||
Zip.ExtractFile(Path.Combine(Environment.CurrentDirectory, "meta.7z"), Path.Combine(Environment.CurrentDirectory, "meta"),
|
||||
MainForm.PublicConfigFile.Password);
|
||||
|
||||
_ = Logger.Log($"Updating Metadata");
|
||||
@@ -96,12 +97,12 @@ namespace AndroidSideloader
|
||||
Directory.Delete(NotesFolder, true);
|
||||
}
|
||||
|
||||
Directory.Move($"{Environment.CurrentDirectory}\\meta\\.meta\\nouns", Nouns);
|
||||
Directory.Move($"{Environment.CurrentDirectory}\\meta\\.meta\\thumbnails", ThumbnailsFolder);
|
||||
Directory.Move($"{Environment.CurrentDirectory}\\meta\\.meta\\notes", NotesFolder);
|
||||
Directory.Move(Path.Combine(Environment.CurrentDirectory, "meta", ".meta", "nouns"), Nouns);
|
||||
Directory.Move(Path.Combine(Environment.CurrentDirectory, "meta", ".meta", "thumbnails"), ThumbnailsFolder);
|
||||
Directory.Move(Path.Combine(Environment.CurrentDirectory, "meta", ".meta", "notes"), NotesFolder);
|
||||
|
||||
_ = Logger.Log($"Initializing Games List");
|
||||
string gameList = File.ReadAllText($"{Environment.CurrentDirectory}\\meta\\VRP-GameList.txt");
|
||||
string gameList = File.ReadAllText(Path.Combine(Environment.CurrentDirectory, "meta", "VRP-GameList.txt"));
|
||||
|
||||
string[] splitList = gameList.Split('\n');
|
||||
splitList = splitList.Skip(1).ToArray();
|
||||
@@ -114,7 +115,7 @@ namespace AndroidSideloader
|
||||
}
|
||||
}
|
||||
|
||||
Directory.Delete($"{Environment.CurrentDirectory}\\meta", true);
|
||||
Directory.Delete(Path.Combine(Environment.CurrentDirectory, "meta"), true);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -179,7 +180,7 @@ namespace AndroidSideloader
|
||||
_ = Logger.Log($"Attempting to Update Download Config");
|
||||
try
|
||||
{
|
||||
string configUrl = "https://wiki.vrpirates.club/downloads/vrp.download.config";
|
||||
string configUrl = "https://vrpirates.wiki/downloads/vrp.download.config";
|
||||
|
||||
HttpWebRequest getUrl = (HttpWebRequest)WebRequest.Create(configUrl);
|
||||
using (StreamReader responseReader = new StreamReader(getUrl.GetResponse().GetResponseStream()))
|
||||
@@ -188,23 +189,23 @@ namespace AndroidSideloader
|
||||
|
||||
_ = Logger.Log($"Retrieved updated config from: {configUrl}");
|
||||
|
||||
if (File.Exists(Environment.CurrentDirectory + "\\rclone\\vrp.download.config_new"))
|
||||
if (File.Exists(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config_new")))
|
||||
{
|
||||
File.Delete(Environment.CurrentDirectory + "\\rclone\\vrp.download.config_new");
|
||||
File.Delete(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config_new"));
|
||||
}
|
||||
|
||||
File.Create(Environment.CurrentDirectory + "\\rclone\\vrp.download.config_new").Close();
|
||||
File.WriteAllText(Environment.CurrentDirectory + "\\rclone\\vrp.download.config_new", resultString);
|
||||
File.Create(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config_new")).Close();
|
||||
File.WriteAllText(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config_new"), resultString);
|
||||
|
||||
if (!File.Exists(Environment.CurrentDirectory + "\\rclone\\hash.txt"))
|
||||
if (!File.Exists(Path.Combine(Environment.CurrentDirectory, "rclone", "hash.txt")))
|
||||
{
|
||||
File.Create(Environment.CurrentDirectory + "\\rclone\\hash.txt").Close();
|
||||
File.Create(Path.Combine(Environment.CurrentDirectory, "rclone", "hash.txt")).Close();
|
||||
}
|
||||
|
||||
string newConfig = CalculateMD5(Environment.CurrentDirectory + "\\rclone\\vrp.download.config_new");
|
||||
string oldConfig = File.ReadAllText(Environment.CurrentDirectory + "\\rclone\\hash.txt");
|
||||
string newConfig = CalculateMD5(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config_new"));
|
||||
string oldConfig = File.ReadAllText(Path.Combine(Environment.CurrentDirectory, "rclone", "hash.txt"));
|
||||
|
||||
if (!File.Exists(Environment.CurrentDirectory + "\\rclone\\vrp.download.config"))
|
||||
if (!File.Exists(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config")))
|
||||
{
|
||||
oldConfig = "Config Doesnt Exist!";
|
||||
}
|
||||
@@ -215,23 +216,23 @@ namespace AndroidSideloader
|
||||
{
|
||||
_ = Logger.Log($"Updated Config Hash is different than the current Config. Updating Configuration File.");
|
||||
|
||||
if (File.Exists(Environment.CurrentDirectory + "\\rclone\\vrp.download.config"))
|
||||
if (File.Exists(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config")))
|
||||
{
|
||||
File.Delete(Environment.CurrentDirectory + "\\rclone\\vrp.download.config");
|
||||
File.Delete(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config"));
|
||||
}
|
||||
|
||||
File.Move(Environment.CurrentDirectory + "\\rclone\\vrp.download.config_new", Environment.CurrentDirectory + "\\rclone\\vrp.download.config");
|
||||
File.Move(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config_new"), Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config"));
|
||||
|
||||
File.WriteAllText(Environment.CurrentDirectory + "\\rclone\\hash.txt", string.Empty);
|
||||
File.WriteAllText(Environment.CurrentDirectory + "\\rclone\\hash.txt", newConfig);
|
||||
File.WriteAllText(Path.Combine(Environment.CurrentDirectory, "rclone", "hash.txt"), string.Empty);
|
||||
File.WriteAllText(Path.Combine(Environment.CurrentDirectory, "rclone", "hash.txt"), newConfig);
|
||||
}
|
||||
else
|
||||
{
|
||||
_ = Logger.Log($"Updated Config Hash matches last download. Not updating.");
|
||||
|
||||
if (File.Exists(Environment.CurrentDirectory + "\\rclone\\vrp.download.config_new"))
|
||||
if (File.Exists(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config_new")))
|
||||
{
|
||||
File.Delete(Environment.CurrentDirectory + "\\rclone\\vrp.download.config_new");
|
||||
File.Delete(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.download.config_new"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -248,7 +249,7 @@ namespace AndroidSideloader
|
||||
_ = Logger.Log($"Attempting to Update Upload Config");
|
||||
try
|
||||
{
|
||||
string configUrl = "https://wiki.vrpirates.club/downloads/vrp.upload.config";
|
||||
string configUrl = "https://vrpirates.wiki/downloads/vrp.upload.config";
|
||||
|
||||
HttpWebRequest getUrl = (HttpWebRequest)WebRequest.Create(configUrl);
|
||||
using (StreamReader responseReader = new StreamReader(getUrl.GetResponse().GetResponseStream()))
|
||||
@@ -257,7 +258,7 @@ namespace AndroidSideloader
|
||||
|
||||
_ = Logger.Log($"Retrieved updated config from: {configUrl}");
|
||||
|
||||
File.WriteAllText(Environment.CurrentDirectory + "\\rclone\\vrp.upload.config", resultString);
|
||||
File.WriteAllText(Path.Combine(Environment.CurrentDirectory, "rclone", "vrp.upload.config"), resultString);
|
||||
|
||||
_ = Logger.Log("Upload config updated successfully.");
|
||||
}
|
||||
@@ -274,26 +275,44 @@ namespace AndroidSideloader
|
||||
| SecurityProtocolType.Tls11
|
||||
| SecurityProtocolType.Tls12
|
||||
| SecurityProtocolType.Ssl3;
|
||||
_ = Logger.Log($"Attempting to Update Public Config");
|
||||
|
||||
_ = Logger.Log("Attempting to update public config from main.");
|
||||
|
||||
string configUrl = "https://raw.githubusercontent.com/vrpyou/quest/main/vrp-public.json";
|
||||
string fallbackUrl = "https://vrpirates.wiki/downloads/vrp-public.json";
|
||||
|
||||
try
|
||||
{
|
||||
string configUrl = "https://wiki.vrpirates.club/downloads/vrp-public.json";
|
||||
string resultString;
|
||||
|
||||
// Try fetching raw JSON data from the provided link
|
||||
HttpWebRequest getUrl = (HttpWebRequest)WebRequest.Create(configUrl);
|
||||
using (StreamReader responseReader = new StreamReader(getUrl.GetResponse().GetResponseStream()))
|
||||
{
|
||||
string resultString = responseReader.ReadToEnd();
|
||||
|
||||
_ = Logger.Log($"Retrieved updated config from: {configUrl}");
|
||||
|
||||
File.WriteAllText(Environment.CurrentDirectory + "\\vrp-public.json", resultString);
|
||||
|
||||
_ = Logger.Log("Public config updated successfully.");
|
||||
resultString = responseReader.ReadToEnd();
|
||||
_ = Logger.Log($"Retrieved updated config from main: {configUrl}.");
|
||||
File.WriteAllText(Path.Combine(Environment.CurrentDirectory, "vrp-public.json"), resultString);
|
||||
_ = Logger.Log("Public config updated successfully from main.");
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
catch (Exception mainException)
|
||||
{
|
||||
_ = Logger.Log($"Failed to update Public config: {e.Message}", LogLevel.ERROR);
|
||||
_ = Logger.Log($"Failed to update public config from main: {mainException.Message}, trying fallback.", LogLevel.ERROR);
|
||||
try
|
||||
{
|
||||
HttpWebRequest getUrl = (HttpWebRequest)WebRequest.Create(fallbackUrl);
|
||||
using (StreamReader responseReader = new StreamReader(getUrl.GetResponse().GetResponseStream()))
|
||||
{
|
||||
string resultString = responseReader.ReadToEnd();
|
||||
_ = Logger.Log($"Retrieved updated config from fallback: {fallbackUrl}.");
|
||||
File.WriteAllText(Path.Combine(Environment.CurrentDirectory, "vrp-public.json"), resultString);
|
||||
_ = Logger.Log("Public config updated successfully from fallback.");
|
||||
}
|
||||
}
|
||||
catch (Exception fallbackException)
|
||||
{
|
||||
_ = Logger.Log($"Failed to update public config from fallback: {fallbackException.Message}.", LogLevel.ERROR);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ namespace AndroidSideloader
|
||||
private static readonly string RawGitHubUrl = "https://raw.githubusercontent.com/VRPirates/rookie";
|
||||
private static readonly string GitHubUrl = "https://github.com/VRPirates/rookie";
|
||||
|
||||
public static readonly string LocalVersion = "2.23";
|
||||
public static readonly string LocalVersion = "2.27.1";
|
||||
public static string currentVersion = string.Empty;
|
||||
public static string changelog = string.Empty;
|
||||
|
||||
@@ -58,7 +58,7 @@ namespace AndroidSideloader
|
||||
{
|
||||
ServicePointManager.Expect100Continue = true;
|
||||
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
|
||||
|
||||
|
||||
Logger.Log($"Downloading update from {GitHubUrl}/releases/download/v{currentVersion}/{AppName}.exe to {AppName} v{currentVersion}.exe");
|
||||
fileClient.DownloadFile($"{GitHubUrl}/releases/download/v{currentVersion}/{AppName}.exe", $"{AppName} v{currentVersion}.exe");
|
||||
|
||||
|
||||
101
Utilities/Zip.cs
101
Utilities/Zip.cs
@@ -4,34 +4,55 @@ using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace AndroidSideloader.Utilities
|
||||
{
|
||||
public class ExtractionException : Exception
|
||||
{
|
||||
public ExtractionException(string message) : base(message) { }
|
||||
}
|
||||
|
||||
internal class Zip
|
||||
{
|
||||
public static void ExtractFile(string sourceArchive, string destination)
|
||||
{
|
||||
string args = $"x \"{sourceArchive}\" -y -o\"{destination}\"";
|
||||
string args = $"x \"{sourceArchive}\" -y -o\"{destination}\" -bsp1";
|
||||
DoExtract(args);
|
||||
}
|
||||
|
||||
public static void ExtractFile(string sourceArchive, string destination, string password)
|
||||
{
|
||||
string args = $"x \"{sourceArchive}\" -y -o\"{destination}\" -p\"{password}\"";
|
||||
string args = $"x \"{sourceArchive}\" -y -o\"{destination}\" -p\"{password}\" -bsp1";
|
||||
DoExtract(args);
|
||||
}
|
||||
|
||||
private static string extractionError = null;
|
||||
private static bool errorMessageShown = false;
|
||||
private static void DoExtract(string args)
|
||||
{
|
||||
if (!File.Exists(Environment.CurrentDirectory + "\\7z.exe") || !File.Exists(Environment.CurrentDirectory + "\\7z.dll"))
|
||||
if (!File.Exists(Path.Combine(Environment.CurrentDirectory, "7z.exe")) || !File.Exists(Path.Combine(Environment.CurrentDirectory, "7z.dll")))
|
||||
{
|
||||
_ = Logger.Log("Begin download 7-zip");
|
||||
WebClient client = new WebClient();
|
||||
client.DownloadFile("https://github.com/VRPirates/rookie/raw/master/7z.exe", "7z.exe");
|
||||
client.DownloadFile("https://github.com/VRPirates/rookie/raw/master/7z.dll", "7z.dll");
|
||||
string architecture = Environment.Is64BitOperatingSystem ? "64" : "";
|
||||
try
|
||||
{
|
||||
client.DownloadFile($"https://github.com/VRPirates/rookie/raw/master/7z{architecture}.exe", $"7z.exe");
|
||||
client.DownloadFile($"https://github.com/VRPirates/rookie/raw/master/7z{architecture}.dll", $"7z.dll");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_ = FlexibleMessageBox.Show($"You are unable to access the GitHub page with the Exception: {ex.Message}\nSome files may be missing (7z)");
|
||||
_ = FlexibleMessageBox.Show("7z was unable to be downloaded\nRookie will now close");
|
||||
Application.Exit();
|
||||
}
|
||||
_ = Logger.Log("Complete download 7-zip");
|
||||
}
|
||||
|
||||
ProcessStartInfo pro = new ProcessStartInfo
|
||||
{
|
||||
WindowStyle = ProcessWindowStyle.Hidden,
|
||||
@@ -46,23 +67,67 @@ namespace AndroidSideloader.Utilities
|
||||
|
||||
_ = Logger.Log($"Extract: 7z {string.Join(" ", args.Split(' ').Where(a => !a.StartsWith("-p")))}");
|
||||
|
||||
Process x = Process.Start(pro);
|
||||
x.WaitForExit();
|
||||
if (x.ExitCode != 0)
|
||||
using (Process x = new Process())
|
||||
{
|
||||
string error = x.StandardError.ReadToEnd();
|
||||
x.StartInfo = pro;
|
||||
|
||||
if (error.Contains("There is not enough space on the disk"))
|
||||
if (MainForm.isInDownloadExtract && x != null)
|
||||
{
|
||||
_ = FlexibleMessageBox.Show(Program.form, $"Not enough space to extract archive.\r\nCheck free space in {Environment.CurrentDirectory} and try again.",
|
||||
"NOT ENOUGH SPACE",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Error);
|
||||
x.OutputDataReceived += (sender, e) =>
|
||||
{
|
||||
if (e.Data != null)
|
||||
{
|
||||
var match = Regex.Match(e.Data, @"(\d+)%");
|
||||
if (match.Success)
|
||||
{
|
||||
int progress = int.Parse(match.Groups[1].Value);
|
||||
MainForm mainForm = (MainForm)Application.OpenForms[0];
|
||||
if (mainForm != null)
|
||||
{
|
||||
mainForm.Invoke((Action)(() => mainForm.SetProgress(progress)));
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
_ = Logger.Log(x.StandardOutput.ReadToEnd());
|
||||
_ = Logger.Log(error, LogLevel.ERROR);
|
||||
throw new ApplicationException($"Extracting failed, status code {x.ExitCode}");
|
||||
|
||||
x.ErrorDataReceived += (sender, e) =>
|
||||
{
|
||||
if (e.Data != null)
|
||||
{
|
||||
var error = e.Data;
|
||||
if (error.Contains("There is not enough space on the disk") && !errorMessageShown)
|
||||
{
|
||||
errorMessageShown = true;
|
||||
Program.form.Invoke(new Action(() =>
|
||||
{
|
||||
_ = FlexibleMessageBox.Show(Program.form, $"Not enough space to extract archive.\r\nMake sure your {Path.GetPathRoot(Properties.Settings.Default.downloadDir)} drive has at least double the space of the game, then try again.",
|
||||
"NOT ENOUGH SPACE",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Error);
|
||||
return;
|
||||
}));
|
||||
}
|
||||
_ = Logger.Log(error, LogLevel.ERROR);
|
||||
extractionError = $"Extracting failed, status code {x.ExitCode}";
|
||||
return;
|
||||
}
|
||||
};
|
||||
|
||||
x.Start();
|
||||
x.BeginOutputReadLine();
|
||||
x.BeginErrorReadLine();
|
||||
x.WaitForExit();
|
||||
errorMessageShown = false;
|
||||
|
||||
if (!string.IsNullOrEmpty(extractionError))
|
||||
{
|
||||
string errorMessage = extractionError;
|
||||
extractionError = null; // Reset the error message
|
||||
throw new ExtractionException(errorMessage);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,7 @@
|
||||
RSL 2.23
|
||||
RSL 2.27
|
||||
|
||||
- Fix: Rookie should now only prompt for newer versions of all games
|
||||
- Fix: Crash when attempting to delete invalid directories or files
|
||||
- Feature: Enable Maximize Button
|
||||
- Feature: Searchbar can now also search release names
|
||||
- Feature: Rookie will now download 64 bit 7zip binaries for faster extractions (when possible)
|
||||
- Fix: 7zip error handler
|
||||
- Fix: Crash when downloading without enough space
|
||||
- Chore: Cleanup code
|
||||
34708
debuglog.txt
34708
debuglog.txt
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user