Compare commits

...

4 Commits

Author SHA1 Message Date
Harry Fn Potter
119a95406e -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

RSL 2.1.5

+ Added Releasename to installing messages and download size message.
= Mulitple bugfixes.

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmDums0ACgkQx/Rql1Vo
czc+PRAAmKSXHjNqO6JXpUKIQczrs3q15yZztgmOQMULNUImis3+/ykOxsMJit1A
W6ORtj3i2VH0TDBx/hhRghMPo+dNilyKnCWm928mXc3taMOEOKu+Dz8WfhnuNp0A
ENmV5fKfuChqrn/6jkUY8UG12NM0eu3A+7fH6LvRADxRxESVH81JUtcf4bSAlier
JuL/q67nv8mThFS3tRtjjvmu0nQMCUcvagfwRNFOUW0aob7NBAp6wxTsbxZo0yEq
oVOxyTAOR84IGHpWeDKDyMw+AySMnHQXl9Ty385zg4eHZr/l1uQcK61uNfiqVCK+
Pag6I1+vLs/3Z3v6qD84iUnis/RV2lqiZcenNeTHQgBKzSsxegB5t0WaID7qlnec
655QnEUbLbIxENS7HodMR1+CzWKgmmYpIH9jV+vH0+mTaKnAYmW56q/ae8OmjXqw
6NXSfog3Dv7U8Imq21Q8glxt/CXh1fY0I8JLxpMjbwEDm56fvvzdRAeE3TeXJR0y
CD9HbH/G8oH/OhLaj1UR5y9FR3PLIBhHmnl9VHtxcvv/nrHMQHbM9bAjPUpNdnSg
30yZxPw/eqv8KLhGxxc+cBnXv3p5bNf2j27gY1Q8XbgcL8PAM6NlVBN/9oaDQ5cL
r5Cc4d5r9F+Q+QrhpZlw3jshHdoVKqgc4ut6xBAWulztNWNvLok=
=tySN
-----END PGP SIGNATURE-----
2021-07-14 04:24:54 -04:00
Harry Fn Potter
2bd4bda513 2.1.5 many bugfixes added gamename to installation messaging. 2021-07-14 04:23:44 -04:00
Harry Fn Potter
4126c82f4d updater fix 2021-07-12 06:29:13 -04:00
Harry Fn Potter
d35fed0217 2.1.4
2.1.3.2 wouldnt work with updater.
2021-07-12 06:21:07 -04:00
8 changed files with 542 additions and 411 deletions

14
ADB.cs
View File

@@ -26,7 +26,7 @@ namespace AndroidSideloader
{
command = $" -s {DeviceID} {command}";
}
if (!command.Contains("dumpsys") && !command.Contains("shell pm list packages"))
if (!command.Contains("dumpsys") && !command.Contains("shell pm list packages") && !command.Contains("KEYCODE_WAKEUP"))
Logger.Log($"Running command {command}");
adb.StartInfo.FileName = adbFilePath;
adb.StartInfo.Arguments = command;
@@ -69,7 +69,7 @@ namespace AndroidSideloader
{
MessageBox.Show("There is not enough room on your device to install this package. Please clear AT LEAST 2x the amount of the app you are trying to install.");
}
if (!output.Contains("version"))
if (!output.Contains("version") && !output.Contains("KEYCODE_WAKEUP") && !output.Contains("KEYCODE_WAKEUP") && !output.Contains("Filesystem") && !output.Contains("package:"))
Logger.Log(output);
Logger.Log(error);
return new ProcessOutput(output, error);
@@ -377,7 +377,8 @@ namespace AndroidSideloader
}
ret += RunAdbCommandToString($"install -g -r \"{path}\"");
}
if (File.Exists($"{Properties.Settings.Default.MainDir}\\Config.Json"))
string gamenameforQU = Sideloader.PackageNametoGameName(packagename);
if (File.Exists($"{Properties.Settings.Default.MainDir}\\Config.Json") && gamenameforQU.Contains("-QU") || path.Contains("-QU"))
{
string gameName = packagename;
packagename = Sideloader.gameNameToPackageName(gameName);
@@ -409,15 +410,18 @@ namespace AndroidSideloader
ret += ADB.RunAdbCommandToString($"push \"{Properties.Settings.Default.MainDir}\\config.json\" /sdcard/android/data/{packagename}/private/config.json");
}
Program.form.ChangeTitle("Sideload done");
Program.form.ChangeTitle("");
return ret;
}
public static ProcessOutput CopyOBB(string path)
{
WakeDevice();
if (path.Contains(".") && !path.Contains("_data"))
if (Path.GetDirectoryName(path).Contains(".") && !Path.GetDirectoryName(path).Contains("_data") || path.Contains("."))
{
Program.form.ChangeTitle($"Copying obb ({Path.GetFileName(path)}) to device...");
return RunAdbCommandToString($"push \"{path}\" /sdcard/Android/obb");
}
return new ProcessOutput();
}
}

336
MainForm.Designer.cs generated
View File

@@ -107,9 +107,10 @@
this.m_combo.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.m_combo.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.m_combo.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.m_combo.Location = new System.Drawing.Point(227, 8);
this.m_combo.Location = new System.Drawing.Point(303, 10);
this.m_combo.Margin = new System.Windows.Forms.Padding(4);
this.m_combo.Name = "m_combo";
this.m_combo.Size = new System.Drawing.Size(353, 24);
this.m_combo.Size = new System.Drawing.Size(469, 28);
this.m_combo.TabIndex = 0;
this.m_combo.Text = "Select an app to uninstall...";
//
@@ -124,10 +125,11 @@
this.startsideloadbutton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.startsideloadbutton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.startsideloadbutton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.startsideloadbutton.Location = new System.Drawing.Point(0, 140);
this.startsideloadbutton.Location = new System.Drawing.Point(0, 170);
this.startsideloadbutton.Margin = new System.Windows.Forms.Padding(4);
this.startsideloadbutton.Name = "startsideloadbutton";
this.startsideloadbutton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.startsideloadbutton.Size = new System.Drawing.Size(218, 28);
this.startsideloadbutton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.startsideloadbutton.Size = new System.Drawing.Size(291, 34);
this.startsideloadbutton.TabIndex = 5;
this.startsideloadbutton.Text = "Sideload APK";
this.startsideloadbutton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -147,8 +149,9 @@
this.devicesbutton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.devicesbutton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.devicesbutton.Location = new System.Drawing.Point(0, 0);
this.devicesbutton.Margin = new System.Windows.Forms.Padding(4);
this.devicesbutton.Name = "devicesbutton";
this.devicesbutton.Size = new System.Drawing.Size(218, 28);
this.devicesbutton.Size = new System.Drawing.Size(291, 34);
this.devicesbutton.TabIndex = 0;
this.devicesbutton.Text = "RECONNECT DEVICE";
this.devicesbutton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -167,9 +170,10 @@
this.obbcopybutton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.obbcopybutton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.obbcopybutton.Location = new System.Drawing.Point(0, 0);
this.obbcopybutton.Margin = new System.Windows.Forms.Padding(4);
this.obbcopybutton.Name = "obbcopybutton";
this.obbcopybutton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.obbcopybutton.Size = new System.Drawing.Size(218, 28);
this.obbcopybutton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.obbcopybutton.Size = new System.Drawing.Size(291, 34);
this.obbcopybutton.TabIndex = 0;
this.obbcopybutton.Text = "Copy OBB";
this.obbcopybutton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -187,10 +191,11 @@
this.backupbutton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.backupbutton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.backupbutton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.backupbutton.Location = new System.Drawing.Point(0, 28);
this.backupbutton.Location = new System.Drawing.Point(0, 34);
this.backupbutton.Margin = new System.Windows.Forms.Padding(4);
this.backupbutton.Name = "backupbutton";
this.backupbutton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.backupbutton.Size = new System.Drawing.Size(218, 28);
this.backupbutton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.backupbutton.Size = new System.Drawing.Size(291, 34);
this.backupbutton.TabIndex = 1;
this.backupbutton.Text = "Backup Gamedata";
this.backupbutton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -209,9 +214,10 @@
this.restorebutton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.restorebutton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.restorebutton.Location = new System.Drawing.Point(0, 0);
this.restorebutton.Margin = new System.Windows.Forms.Padding(4);
this.restorebutton.Name = "restorebutton";
this.restorebutton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.restorebutton.Size = new System.Drawing.Size(218, 28);
this.restorebutton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.restorebutton.Size = new System.Drawing.Size(291, 34);
this.restorebutton.TabIndex = 0;
this.restorebutton.Text = "Restore Gamedata";
this.restorebutton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -229,10 +235,11 @@
this.getApkButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.getApkButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.getApkButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.getApkButton.Location = new System.Drawing.Point(0, 56);
this.getApkButton.Location = new System.Drawing.Point(0, 68);
this.getApkButton.Margin = new System.Windows.Forms.Padding(4);
this.getApkButton.Name = "getApkButton";
this.getApkButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.getApkButton.Size = new System.Drawing.Size(218, 28);
this.getApkButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.getApkButton.Size = new System.Drawing.Size(291, 34);
this.getApkButton.TabIndex = 2;
this.getApkButton.Text = "Extract Apk from device";
this.getApkButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -250,10 +257,11 @@
this.uninstallAppButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.uninstallAppButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.uninstallAppButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.uninstallAppButton.Location = new System.Drawing.Point(0, 84);
this.uninstallAppButton.Location = new System.Drawing.Point(0, 102);
this.uninstallAppButton.Margin = new System.Windows.Forms.Padding(4);
this.uninstallAppButton.Name = "uninstallAppButton";
this.uninstallAppButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.uninstallAppButton.Size = new System.Drawing.Size(218, 28);
this.uninstallAppButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.uninstallAppButton.Size = new System.Drawing.Size(291, 34);
this.uninstallAppButton.TabIndex = 3;
this.uninstallAppButton.Text = "Uninstall Selected App";
this.uninstallAppButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -271,10 +279,11 @@
this.sideloadFolderButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.sideloadFolderButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.sideloadFolderButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.sideloadFolderButton.Location = new System.Drawing.Point(0, 112);
this.sideloadFolderButton.Location = new System.Drawing.Point(0, 136);
this.sideloadFolderButton.Margin = new System.Windows.Forms.Padding(4);
this.sideloadFolderButton.Name = "sideloadFolderButton";
this.sideloadFolderButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.sideloadFolderButton.Size = new System.Drawing.Size(218, 28);
this.sideloadFolderButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.sideloadFolderButton.Size = new System.Drawing.Size(291, 34);
this.sideloadFolderButton.TabIndex = 4;
this.sideloadFolderButton.Text = "Sideload Folder (recursive)";
this.sideloadFolderButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -287,9 +296,10 @@
| System.Windows.Forms.AnchorStyles.Right)));
this.progressBar.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.progressBar.ForeColor = System.Drawing.Color.Purple;
this.progressBar.Location = new System.Drawing.Point(228, 441);
this.progressBar.Location = new System.Drawing.Point(304, 543);
this.progressBar.Margin = new System.Windows.Forms.Padding(4);
this.progressBar.Name = "progressBar";
this.progressBar.Size = new System.Drawing.Size(367, 25);
this.progressBar.Size = new System.Drawing.Size(489, 31);
this.progressBar.TabIndex = 7;
//
// copyBulkObbButton
@@ -303,10 +313,11 @@
this.copyBulkObbButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.copyBulkObbButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.copyBulkObbButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.copyBulkObbButton.Location = new System.Drawing.Point(0, 28);
this.copyBulkObbButton.Location = new System.Drawing.Point(0, 34);
this.copyBulkObbButton.Margin = new System.Windows.Forms.Padding(4);
this.copyBulkObbButton.Name = "copyBulkObbButton";
this.copyBulkObbButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.copyBulkObbButton.Size = new System.Drawing.Size(218, 28);
this.copyBulkObbButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.copyBulkObbButton.Size = new System.Drawing.Size(291, 34);
this.copyBulkObbButton.TabIndex = 1;
this.copyBulkObbButton.Text = "Recursive Copy OBB";
this.copyBulkObbButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -324,14 +335,14 @@
this.downloadInstallGameButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.downloadInstallGameButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.downloadInstallGameButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.downloadInstallGameButton.Location = new System.Drawing.Point(601, 439);
this.downloadInstallGameButton.Location = new System.Drawing.Point(801, 540);
this.downloadInstallGameButton.Margin = new System.Windows.Forms.Padding(4);
this.downloadInstallGameButton.Name = "downloadInstallGameButton";
this.downloadInstallGameButton.Size = new System.Drawing.Size(371, 30);
this.downloadInstallGameButton.Size = new System.Drawing.Size(495, 37);
this.downloadInstallGameButton.TabIndex = 8;
this.downloadInstallGameButton.Text = "Download and Install Game/Add to Queue";
this.downloadInstallGameButton.UseVisualStyleBackColor = false;
this.downloadInstallGameButton.Click += new System.EventHandler(this.downloadInstallGameButton_Click);
this.downloadInstallGameButton.Enter += new System.EventHandler(this.downloadInstallGameButton_Click);
//
// panel1
//
@@ -353,9 +364,9 @@
this.panel1.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "ButtonColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.panel1.Dock = System.Windows.Forms.DockStyle.Left;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Margin = new System.Windows.Forms.Padding(2);
this.panel1.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(218, 721);
this.panel1.Size = new System.Drawing.Size(291, 887);
this.panel1.TabIndex = 73;
//
// downloadingLabel
@@ -364,9 +375,10 @@
this.downloadingLabel.BackColor = System.Drawing.SystemColors.WindowText;
this.downloadingLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F);
this.downloadingLabel.ForeColor = System.Drawing.SystemColors.Control;
this.downloadingLabel.Location = new System.Drawing.Point(-3, 688);
this.downloadingLabel.Location = new System.Drawing.Point(-4, 847);
this.downloadingLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.downloadingLabel.Name = "downloadingLabel";
this.downloadingLabel.Size = new System.Drawing.Size(0, 18);
this.downloadingLabel.Size = new System.Drawing.Size(0, 24);
this.downloadingLabel.TabIndex = 83;
//
// aboutBtn
@@ -381,9 +393,10 @@
this.aboutBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.aboutBtn.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.aboutBtn.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.aboutBtn.Location = new System.Drawing.Point(0, 596);
this.aboutBtn.Location = new System.Drawing.Point(0, 732);
this.aboutBtn.Margin = new System.Windows.Forms.Padding(4);
this.aboutBtn.Name = "aboutBtn";
this.aboutBtn.Size = new System.Drawing.Size(218, 28);
this.aboutBtn.Size = new System.Drawing.Size(291, 34);
this.aboutBtn.TabIndex = 5;
this.aboutBtn.Text = "ABOUT";
this.aboutBtn.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -402,9 +415,10 @@
this.settingsButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.settingsButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.settingsButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.settingsButton.Location = new System.Drawing.Point(0, 568);
this.settingsButton.Location = new System.Drawing.Point(0, 698);
this.settingsButton.Margin = new System.Windows.Forms.Padding(4);
this.settingsButton.Name = "settingsButton";
this.settingsButton.Size = new System.Drawing.Size(218, 28);
this.settingsButton.Size = new System.Drawing.Size(291, 34);
this.settingsButton.TabIndex = 4;
this.settingsButton.Text = "SETTINGS";
this.settingsButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -422,10 +436,10 @@
this.otherContainer.Controls.Add(this.ADBWirelessEnable);
this.otherContainer.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "SubButtonColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.otherContainer.Dock = System.Windows.Forms.DockStyle.Top;
this.otherContainer.Location = new System.Drawing.Point(0, 401);
this.otherContainer.Margin = new System.Windows.Forms.Padding(2);
this.otherContainer.Location = new System.Drawing.Point(0, 492);
this.otherContainer.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.otherContainer.Name = "otherContainer";
this.otherContainer.Size = new System.Drawing.Size(218, 167);
this.otherContainer.Size = new System.Drawing.Size(291, 206);
this.otherContainer.TabIndex = 80;
//
// InstallQUset
@@ -439,10 +453,11 @@
this.InstallQUset.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.InstallQUset.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.InstallQUset.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.InstallQUset.Location = new System.Drawing.Point(0, 140);
this.InstallQUset.Location = new System.Drawing.Point(0, 170);
this.InstallQUset.Margin = new System.Windows.Forms.Padding(4);
this.InstallQUset.Name = "InstallQUset";
this.InstallQUset.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.InstallQUset.Size = new System.Drawing.Size(218, 28);
this.InstallQUset.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.InstallQUset.Size = new System.Drawing.Size(291, 34);
this.InstallQUset.TabIndex = 5;
this.InstallQUset.Text = "Install QU Setting";
this.InstallQUset.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -460,10 +475,11 @@
this.removeQUSetting.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.removeQUSetting.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.removeQUSetting.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.removeQUSetting.Location = new System.Drawing.Point(0, 112);
this.removeQUSetting.Location = new System.Drawing.Point(0, 136);
this.removeQUSetting.Margin = new System.Windows.Forms.Padding(4);
this.removeQUSetting.Name = "removeQUSetting";
this.removeQUSetting.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.removeQUSetting.Size = new System.Drawing.Size(218, 28);
this.removeQUSetting.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.removeQUSetting.Size = new System.Drawing.Size(291, 34);
this.removeQUSetting.TabIndex = 4;
this.removeQUSetting.Text = "Remove QU Setting";
this.removeQUSetting.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -481,10 +497,11 @@
this.ThemeChangerButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.ThemeChangerButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.ThemeChangerButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.ThemeChangerButton.Location = new System.Drawing.Point(0, 84);
this.ThemeChangerButton.Location = new System.Drawing.Point(0, 102);
this.ThemeChangerButton.Margin = new System.Windows.Forms.Padding(4);
this.ThemeChangerButton.Name = "ThemeChangerButton";
this.ThemeChangerButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.ThemeChangerButton.Size = new System.Drawing.Size(218, 28);
this.ThemeChangerButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.ThemeChangerButton.Size = new System.Drawing.Size(291, 34);
this.ThemeChangerButton.TabIndex = 3;
this.ThemeChangerButton.Text = "Theme Changer";
this.ThemeChangerButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -502,10 +519,11 @@
this.QuestOptionsButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.QuestOptionsButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.QuestOptionsButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.QuestOptionsButton.Location = new System.Drawing.Point(0, 56);
this.QuestOptionsButton.Location = new System.Drawing.Point(0, 68);
this.QuestOptionsButton.Margin = new System.Windows.Forms.Padding(4);
this.QuestOptionsButton.Name = "QuestOptionsButton";
this.QuestOptionsButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.QuestOptionsButton.Size = new System.Drawing.Size(218, 28);
this.QuestOptionsButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.QuestOptionsButton.Size = new System.Drawing.Size(291, 34);
this.QuestOptionsButton.TabIndex = 2;
this.QuestOptionsButton.Text = "Quest Options";
this.QuestOptionsButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -523,10 +541,11 @@
this.ADBWirelessDisable.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.ADBWirelessDisable.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.ADBWirelessDisable.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.ADBWirelessDisable.Location = new System.Drawing.Point(0, 28);
this.ADBWirelessDisable.Location = new System.Drawing.Point(0, 34);
this.ADBWirelessDisable.Margin = new System.Windows.Forms.Padding(4);
this.ADBWirelessDisable.Name = "ADBWirelessDisable";
this.ADBWirelessDisable.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.ADBWirelessDisable.Size = new System.Drawing.Size(218, 28);
this.ADBWirelessDisable.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.ADBWirelessDisable.Size = new System.Drawing.Size(291, 34);
this.ADBWirelessDisable.TabIndex = 1;
this.ADBWirelessDisable.Text = "Disable WIreless ADB";
this.ADBWirelessDisable.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -545,9 +564,10 @@
this.ADBWirelessEnable.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.ADBWirelessEnable.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.ADBWirelessEnable.Location = new System.Drawing.Point(0, 0);
this.ADBWirelessEnable.Margin = new System.Windows.Forms.Padding(4);
this.ADBWirelessEnable.Name = "ADBWirelessEnable";
this.ADBWirelessEnable.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.ADBWirelessEnable.Size = new System.Drawing.Size(218, 28);
this.ADBWirelessEnable.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.ADBWirelessEnable.Size = new System.Drawing.Size(291, 34);
this.ADBWirelessEnable.TabIndex = 0;
this.ADBWirelessEnable.Text = "Enable Wireless ADB";
this.ADBWirelessEnable.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -566,11 +586,11 @@
this.otherDrop.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.otherDrop.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.otherDrop.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.otherDrop.Location = new System.Drawing.Point(0, 373);
this.otherDrop.Margin = new System.Windows.Forms.Padding(2);
this.otherDrop.Location = new System.Drawing.Point(0, 458);
this.otherDrop.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.otherDrop.Name = "otherDrop";
this.otherDrop.Padding = new System.Windows.Forms.Padding(7, 0, 0, 0);
this.otherDrop.Size = new System.Drawing.Size(218, 28);
this.otherDrop.Padding = new System.Windows.Forms.Padding(9, 0, 0, 0);
this.otherDrop.Size = new System.Drawing.Size(291, 34);
this.otherDrop.TabIndex = 3;
this.otherDrop.Text = "> OTHER";
this.otherDrop.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -584,10 +604,10 @@
this.backupContainer.Controls.Add(this.restorebutton);
this.backupContainer.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "SubButtonColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.backupContainer.Dock = System.Windows.Forms.DockStyle.Top;
this.backupContainer.Location = new System.Drawing.Point(0, 313);
this.backupContainer.Margin = new System.Windows.Forms.Padding(2);
this.backupContainer.Location = new System.Drawing.Point(0, 384);
this.backupContainer.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.backupContainer.Name = "backupContainer";
this.backupContainer.Size = new System.Drawing.Size(218, 60);
this.backupContainer.Size = new System.Drawing.Size(291, 74);
this.backupContainer.TabIndex = 76;
//
// backupDrop
@@ -602,11 +622,11 @@
this.backupDrop.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.backupDrop.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.backupDrop.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.backupDrop.Location = new System.Drawing.Point(0, 285);
this.backupDrop.Margin = new System.Windows.Forms.Padding(2);
this.backupDrop.Location = new System.Drawing.Point(0, 350);
this.backupDrop.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.backupDrop.Name = "backupDrop";
this.backupDrop.Padding = new System.Windows.Forms.Padding(7, 0, 0, 0);
this.backupDrop.Size = new System.Drawing.Size(218, 28);
this.backupDrop.Padding = new System.Windows.Forms.Padding(9, 0, 0, 0);
this.backupDrop.Size = new System.Drawing.Size(291, 34);
this.backupDrop.TabIndex = 2;
this.backupDrop.Text = "> BACKUP";
this.backupDrop.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -626,10 +646,10 @@
this.sideloadContainer.Controls.Add(this.obbcopybutton);
this.sideloadContainer.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "SubButtonColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.sideloadContainer.Dock = System.Windows.Forms.DockStyle.Top;
this.sideloadContainer.Location = new System.Drawing.Point(0, 56);
this.sideloadContainer.Margin = new System.Windows.Forms.Padding(2);
this.sideloadContainer.Location = new System.Drawing.Point(0, 68);
this.sideloadContainer.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.sideloadContainer.Name = "sideloadContainer";
this.sideloadContainer.Size = new System.Drawing.Size(218, 229);
this.sideloadContainer.Size = new System.Drawing.Size(291, 282);
this.sideloadContainer.TabIndex = 74;
//
// UpdateGamesButton
@@ -643,10 +663,11 @@
this.UpdateGamesButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.UpdateGamesButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.UpdateGamesButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.UpdateGamesButton.Location = new System.Drawing.Point(0, 196);
this.UpdateGamesButton.Location = new System.Drawing.Point(0, 238);
this.UpdateGamesButton.Margin = new System.Windows.Forms.Padding(4);
this.UpdateGamesButton.Name = "UpdateGamesButton";
this.UpdateGamesButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.UpdateGamesButton.Size = new System.Drawing.Size(218, 28);
this.UpdateGamesButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.UpdateGamesButton.Size = new System.Drawing.Size(291, 34);
this.UpdateGamesButton.TabIndex = 7;
this.UpdateGamesButton.Text = "Refresh Update List";
this.UpdateGamesButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -664,10 +685,11 @@
this.listApkButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.listApkButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.listApkButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.listApkButton.Location = new System.Drawing.Point(0, 168);
this.listApkButton.Location = new System.Drawing.Point(0, 204);
this.listApkButton.Margin = new System.Windows.Forms.Padding(4);
this.listApkButton.Name = "listApkButton";
this.listApkButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.listApkButton.Size = new System.Drawing.Size(218, 28);
this.listApkButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.listApkButton.Size = new System.Drawing.Size(291, 34);
this.listApkButton.TabIndex = 6;
this.listApkButton.Text = "Refresh All";
this.listApkButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -686,11 +708,11 @@
this.sideloadDrop.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.sideloadDrop.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.sideloadDrop.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.sideloadDrop.Location = new System.Drawing.Point(0, 28);
this.sideloadDrop.Margin = new System.Windows.Forms.Padding(2);
this.sideloadDrop.Location = new System.Drawing.Point(0, 34);
this.sideloadDrop.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.sideloadDrop.Name = "sideloadDrop";
this.sideloadDrop.Padding = new System.Windows.Forms.Padding(7, 0, 0, 0);
this.sideloadDrop.Size = new System.Drawing.Size(218, 28);
this.sideloadDrop.Padding = new System.Windows.Forms.Padding(9, 0, 0, 0);
this.sideloadDrop.Size = new System.Drawing.Size(291, 34);
this.sideloadDrop.TabIndex = 1;
this.sideloadDrop.Text = "> SIDELOAD";
this.sideloadDrop.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -704,10 +726,9 @@
this.diskLabel.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.diskLabel.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.diskLabel.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.diskLabel.Location = new System.Drawing.Point(2, 638);
this.diskLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.diskLabel.Location = new System.Drawing.Point(4, 767);
this.diskLabel.Name = "diskLabel";
this.diskLabel.Size = new System.Drawing.Size(84, 17);
this.diskLabel.Size = new System.Drawing.Size(99, 20);
this.diskLabel.TabIndex = 7;
this.diskLabel.Text = "Disk Label";
//
@@ -718,10 +739,9 @@
this.speedLabel.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.speedLabel.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.speedLabel.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.speedLabel.Location = new System.Drawing.Point(-3, 681);
this.speedLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.speedLabel.Location = new System.Drawing.Point(0, 838);
this.speedLabel.Name = "speedLabel";
this.speedLabel.Size = new System.Drawing.Size(159, 17);
this.speedLabel.Size = new System.Drawing.Size(189, 20);
this.speedLabel.TabIndex = 76;
this.speedLabel.Text = "DLS: Speed in MBPS";
//
@@ -732,10 +752,9 @@
this.etaLabel.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.etaLabel.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.etaLabel.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.etaLabel.Location = new System.Drawing.Point(-3, 698);
this.etaLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.etaLabel.Location = new System.Drawing.Point(0, 859);
this.etaLabel.Name = "etaLabel";
this.etaLabel.Size = new System.Drawing.Size(157, 17);
this.etaLabel.Size = new System.Drawing.Size(189, 20);
this.etaLabel.TabIndex = 75;
this.etaLabel.Text = "ETA: HH:MM:SS Left";
//
@@ -748,9 +767,10 @@
this.freeDisclaimer.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.freeDisclaimer.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.freeDisclaimer.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.freeDisclaimer.Location = new System.Drawing.Point(277, 554);
this.freeDisclaimer.Location = new System.Drawing.Point(369, 682);
this.freeDisclaimer.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.freeDisclaimer.Name = "freeDisclaimer";
this.freeDisclaimer.Size = new System.Drawing.Size(246, 40);
this.freeDisclaimer.Size = new System.Drawing.Size(294, 50);
this.freeDisclaimer.TabIndex = 79;
this.freeDisclaimer.Text = "This app is FREE!! \r\nClick here to go to the github.";
this.freeDisclaimer.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@@ -768,11 +788,11 @@
this.gamesQueListBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.gamesQueListBox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.gamesQueListBox.FormattingEnabled = true;
this.gamesQueListBox.ItemHeight = 16;
this.gamesQueListBox.Location = new System.Drawing.Point(601, 475);
this.gamesQueListBox.Margin = new System.Windows.Forms.Padding(2);
this.gamesQueListBox.ItemHeight = 20;
this.gamesQueListBox.Location = new System.Drawing.Point(801, 585);
this.gamesQueListBox.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.gamesQueListBox.Name = "gamesQueListBox";
this.gamesQueListBox.Size = new System.Drawing.Size(372, 130);
this.gamesQueListBox.Size = new System.Drawing.Size(495, 162);
this.gamesQueListBox.TabIndex = 9;
this.gamesQueListBox.MouseClick += new System.Windows.Forms.MouseEventHandler(this.gamesQueListBox_MouseClick);
//
@@ -787,10 +807,10 @@
this.devicesComboBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.devicesComboBox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.devicesComboBox.FormattingEnabled = true;
this.devicesComboBox.Location = new System.Drawing.Point(227, 39);
this.devicesComboBox.Margin = new System.Windows.Forms.Padding(2);
this.devicesComboBox.Location = new System.Drawing.Point(303, 48);
this.devicesComboBox.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.devicesComboBox.Name = "devicesComboBox";
this.devicesComboBox.Size = new System.Drawing.Size(161, 24);
this.devicesComboBox.Size = new System.Drawing.Size(213, 28);
this.devicesComboBox.TabIndex = 1;
this.devicesComboBox.Text = "Select your device";
this.devicesComboBox.SelectedIndexChanged += new System.EventHandler(this.devicesComboBox_SelectedIndexChanged);
@@ -806,10 +826,10 @@
this.remotesList.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.remotesList.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.remotesList.FormattingEnabled = true;
this.remotesList.Location = new System.Drawing.Point(527, 39);
this.remotesList.Margin = new System.Windows.Forms.Padding(2);
this.remotesList.Location = new System.Drawing.Point(703, 48);
this.remotesList.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.remotesList.Name = "remotesList";
this.remotesList.Size = new System.Drawing.Size(53, 24);
this.remotesList.Size = new System.Drawing.Size(69, 28);
this.remotesList.TabIndex = 3;
this.remotesList.SelectedIndexChanged += new System.EventHandler(this.remotesList_SelectedIndexChanged);
//
@@ -823,9 +843,10 @@
this.gamesListView.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.gamesListView.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.gamesListView.HideSelection = false;
this.gamesListView.Location = new System.Drawing.Point(227, 69);
this.gamesListView.Location = new System.Drawing.Point(303, 85);
this.gamesListView.Margin = new System.Windows.Forms.Padding(4);
this.gamesListView.Name = "gamesListView";
this.gamesListView.Size = new System.Drawing.Size(745, 366);
this.gamesListView.Size = new System.Drawing.Size(992, 450);
this.gamesListView.TabIndex = 6;
this.gamesListView.UseCompatibleStateImageBehavior = false;
this.gamesListView.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listView1_ColumnClick);
@@ -845,9 +866,10 @@
this.searchTextBox.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.searchTextBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.searchTextBox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.searchTextBox.Location = new System.Drawing.Point(473, 250);
this.searchTextBox.Location = new System.Drawing.Point(631, 308);
this.searchTextBox.Margin = new System.Windows.Forms.Padding(4);
this.searchTextBox.Name = "searchTextBox";
this.searchTextBox.Size = new System.Drawing.Size(231, 23);
this.searchTextBox.Size = new System.Drawing.Size(307, 26);
this.searchTextBox.TabIndex = 5;
this.searchTextBox.Text = "Search";
this.searchTextBox.Visible = false;
@@ -863,9 +885,10 @@
this.gamesQueueLabel.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.gamesQueueLabel.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.gamesQueueLabel.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.gamesQueueLabel.Location = new System.Drawing.Point(597, 590);
this.gamesQueueLabel.Location = new System.Drawing.Point(796, 726);
this.gamesQueueLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.gamesQueueLabel.Name = "gamesQueueLabel";
this.gamesQueueLabel.Size = new System.Drawing.Size(111, 17);
this.gamesQueueLabel.Size = new System.Drawing.Size(128, 20);
this.gamesQueueLabel.TabIndex = 86;
this.gamesQueueLabel.Text = "Games Queue";
//
@@ -881,9 +904,10 @@
this.MountButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.MountButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.MountButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.MountButton.Location = new System.Drawing.Point(393, 39);
this.MountButton.Location = new System.Drawing.Point(524, 48);
this.MountButton.Margin = new System.Windows.Forms.Padding(4);
this.MountButton.Name = "MountButton";
this.MountButton.Size = new System.Drawing.Size(66, 26);
this.MountButton.Size = new System.Drawing.Size(88, 32);
this.MountButton.TabIndex = 2;
this.MountButton.Text = "Mount";
this.MountButton.UseVisualStyleBackColor = false;
@@ -897,9 +921,10 @@
this.ProgressText.BackColor = System.Drawing.Color.Transparent;
this.ProgressText.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.ProgressText.ForeColor = System.Drawing.Color.White;
this.ProgressText.Location = new System.Drawing.Point(225, 692);
this.ProgressText.Location = new System.Drawing.Point(300, 852);
this.ProgressText.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.ProgressText.Name = "ProgressText";
this.ProgressText.Size = new System.Drawing.Size(0, 18);
this.ProgressText.Size = new System.Drawing.Size(0, 24);
this.ProgressText.TabIndex = 88;
//
// notesRichTextBox
@@ -912,12 +937,13 @@
this.notesRichTextBox.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.notesRichTextBox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.notesRichTextBox.HideSelection = false;
this.notesRichTextBox.Location = new System.Drawing.Point(601, 610);
this.notesRichTextBox.Location = new System.Drawing.Point(801, 751);
this.notesRichTextBox.Margin = new System.Windows.Forms.Padding(4);
this.notesRichTextBox.Name = "notesRichTextBox";
this.notesRichTextBox.ReadOnly = true;
this.notesRichTextBox.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.Vertical;
this.notesRichTextBox.ShowSelectionMargin = true;
this.notesRichTextBox.Size = new System.Drawing.Size(371, 79);
this.notesRichTextBox.Size = new System.Drawing.Size(493, 96);
this.notesRichTextBox.TabIndex = 10;
this.notesRichTextBox.Text = "";
//
@@ -928,9 +954,10 @@
this.DragDropLbl.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.DragDropLbl.Font = new System.Drawing.Font("Microsoft Sans Serif", 36F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.DragDropLbl.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.DragDropLbl.Location = new System.Drawing.Point(240, 543);
this.DragDropLbl.Location = new System.Drawing.Point(806, 627);
this.DragDropLbl.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.DragDropLbl.Name = "DragDropLbl";
this.DragDropLbl.Size = new System.Drawing.Size(320, 55);
this.DragDropLbl.Size = new System.Drawing.Size(394, 69);
this.DragDropLbl.TabIndex = 25;
this.DragDropLbl.Text = "DragDropLBL";
this.DragDropLbl.Visible = false;
@@ -943,9 +970,10 @@
this.label1.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.label1.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.label1.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.label1.Location = new System.Drawing.Point(598, 677);
this.label1.Location = new System.Drawing.Point(797, 833);
this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(98, 17);
this.label1.Size = new System.Drawing.Size(115, 20);
this.label1.TabIndex = 86;
this.label1.Text = "Install Notes";
//
@@ -959,9 +987,10 @@
this.pictureBox1.ErrorImage = null;
this.pictureBox1.ImageLocation = global::AndroidSideloader.Properties.Settings.Default.BackPicturePath;
this.pictureBox1.InitialImage = null;
this.pictureBox1.Location = new System.Drawing.Point(217, -2);
this.pictureBox1.Location = new System.Drawing.Point(289, -2);
this.pictureBox1.Margin = new System.Windows.Forms.Padding(4);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(764, 718);
this.pictureBox1.Size = new System.Drawing.Size(1019, 884);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.pictureBox1.TabIndex = 74;
this.pictureBox1.TabStop = false;
@@ -970,9 +999,10 @@
// label2
//
this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
this.label2.Location = new System.Drawing.Point(460, 193);
this.label2.Location = new System.Drawing.Point(605, 239);
this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(271, 120);
this.label2.Size = new System.Drawing.Size(361, 148);
this.label2.TabIndex = 89;
this.label2.Visible = false;
//
@@ -984,9 +1014,10 @@
this.label3.AutoSize = true;
this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold);
this.label3.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.label3.Location = new System.Drawing.Point(509, 207);
this.label3.Location = new System.Drawing.Point(673, 252);
this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(170, 51);
this.label3.Size = new System.Drawing.Size(196, 60);
this.label3.TabIndex = 90;
this.label3.Text = "Start typing to search.\r\nPress ESC to close.\r\n\r\n";
this.label3.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@@ -1000,9 +1031,10 @@
this.label4.AutoSize = true;
this.label4.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold);
this.label4.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.label4.Location = new System.Drawing.Point(523, 280);
this.label4.Location = new System.Drawing.Point(696, 350);
this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(132, 17);
this.label4.Size = new System.Drawing.Size(156, 20);
this.label4.TabIndex = 90;
this.label4.Text = "Shorcut: CTRL+F";
this.label4.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@@ -1014,9 +1046,10 @@
this.label5.AutoSize = true;
this.label5.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold);
this.label5.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.label5.Location = new System.Drawing.Point(692, 11);
this.label5.Location = new System.Drawing.Point(923, 14);
this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(99, 17);
this.label5.Size = new System.Drawing.Size(114, 20);
this.label5.TabIndex = 90;
this.label5.Text = "Search apps";
this.label5.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@@ -1025,9 +1058,10 @@
//
this.pictureBox3.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.pictureBox3.Image = global::AndroidSideloader.Properties.Resources.orangekey;
this.pictureBox3.Location = new System.Drawing.Point(803, 10);
this.pictureBox3.Location = new System.Drawing.Point(1071, 12);
this.pictureBox3.Margin = new System.Windows.Forms.Padding(4);
this.pictureBox3.Name = "pictureBox3";
this.pictureBox3.Size = new System.Drawing.Size(21, 20);
this.pictureBox3.Size = new System.Drawing.Size(28, 25);
this.pictureBox3.TabIndex = 92;
this.pictureBox3.TabStop = false;
//
@@ -1035,9 +1069,10 @@
//
this.pictureBox2.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.pictureBox2.Image = global::AndroidSideloader.Properties.Resources.SearchGlass;
this.pictureBox2.Location = new System.Drawing.Point(731, 37);
this.pictureBox2.Location = new System.Drawing.Point(975, 46);
this.pictureBox2.Margin = new System.Windows.Forms.Padding(4);
this.pictureBox2.Name = "pictureBox2";
this.pictureBox2.Size = new System.Drawing.Size(28, 24);
this.pictureBox2.Size = new System.Drawing.Size(37, 30);
this.pictureBox2.TabIndex = 91;
this.pictureBox2.TabStop = false;
this.pictureBox2.Click += new System.EventHandler(this.pictureBox2_Click);
@@ -1046,9 +1081,10 @@
//
this.gamesPictureBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.gamesPictureBox.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.gamesPictureBox.Location = new System.Drawing.Point(227, 472);
this.gamesPictureBox.Location = new System.Drawing.Point(303, 581);
this.gamesPictureBox.Margin = new System.Windows.Forms.Padding(4);
this.gamesPictureBox.Name = "gamesPictureBox";
this.gamesPictureBox.Size = new System.Drawing.Size(367, 214);
this.gamesPictureBox.Size = new System.Drawing.Size(489, 263);
this.gamesPictureBox.TabIndex = 84;
this.gamesPictureBox.TabStop = false;
//
@@ -1056,9 +1092,10 @@
//
this.pictureBox4.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.pictureBox4.Image = global::AndroidSideloader.Properties.Resources.greenkey;
this.pictureBox4.Location = new System.Drawing.Point(803, 39);
this.pictureBox4.Location = new System.Drawing.Point(1071, 48);
this.pictureBox4.Margin = new System.Windows.Forms.Padding(4);
this.pictureBox4.Name = "pictureBox4";
this.pictureBox4.Size = new System.Drawing.Size(21, 20);
this.pictureBox4.Size = new System.Drawing.Size(28, 25);
this.pictureBox4.TabIndex = 92;
this.pictureBox4.TabStop = false;
//
@@ -1068,9 +1105,10 @@
this.label6.AutoSize = true;
this.label6.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold);
this.label6.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.label6.Location = new System.Drawing.Point(828, 12);
this.label6.Location = new System.Drawing.Point(1104, 15);
this.label6.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(145, 17);
this.label6.Size = new System.Drawing.Size(167, 20);
this.label6.TabIndex = 90;
this.label6.Text = "= Update Available";
this.label6.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@@ -1081,9 +1119,10 @@
this.label7.AutoSize = true;
this.label7.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold);
this.label7.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.label7.Location = new System.Drawing.Point(828, 41);
this.label7.Location = new System.Drawing.Point(1104, 50);
this.label7.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(98, 17);
this.label7.Size = new System.Drawing.Size(113, 20);
this.label7.TabIndex = 90;
this.label7.Text = "= Up to date";
this.label7.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@@ -1094,9 +1133,10 @@
this.label8.AutoSize = true;
this.label8.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold);
this.label8.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.label8.Location = new System.Drawing.Point(459, 42);
this.label8.Location = new System.Drawing.Point(612, 52);
this.label8.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(65, 17);
this.label8.Size = new System.Drawing.Size(76, 20);
this.label8.TabIndex = 90;
this.label8.Text = "Mirror #";
this.label8.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@@ -1108,9 +1148,10 @@
this.EnterInstallBox.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.EnterInstallBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.EnterInstallBox.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.EnterInstallBox.Location = new System.Drawing.Point(593, 7);
this.EnterInstallBox.Location = new System.Drawing.Point(791, 9);
this.EnterInstallBox.Margin = new System.Windows.Forms.Padding(4);
this.EnterInstallBox.Name = "EnterInstallBox";
this.EnterInstallBox.Size = new System.Drawing.Size(90, 52);
this.EnterInstallBox.Size = new System.Drawing.Size(107, 61);
this.EnterInstallBox.TabIndex = 93;
this.EnterInstallBox.Text = " Install w/ \r\n Enter Key";
this.EnterInstallBox.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -1120,10 +1161,10 @@
// MainForm
//
this.AllowDrop = true;
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = global::AndroidSideloader.Properties.Settings.Default.BackColor;
this.ClientSize = new System.Drawing.Size(980, 721);
this.ClientSize = new System.Drawing.Size(1307, 887);
this.Controls.Add(this.EnterInstallBox);
this.Controls.Add(this.ProgressText);
this.Controls.Add(this.pictureBox4);
@@ -1154,6 +1195,7 @@
this.Controls.Add(this.gamesListView);
this.Controls.Add(this.pictureBox1);
this.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "BackColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.Margin = new System.Windows.Forms.Padding(4);
this.MaximizeBox = false;
this.Name = "MainForm";
this.ShowIcon = false;

View File

@@ -28,6 +28,7 @@ namespace AndroidSideloader
public bool DeviceConnected = false;
#else
public bool keyheld;
public bool keyheld2;
public static bool debugMode = false;
public bool DeviceConnected = false;
#endif
@@ -44,9 +45,13 @@ namespace AndroidSideloader
t.Tick += new EventHandler(timer_Tick);
t.Start();
System.Windows.Forms.Timer t2 = new System.Windows.Forms.Timer();
t2.Interval = 100; // 14 mins between wakeup commands
t2.Interval = 30; // 30ms
t2.Tick += new EventHandler(timer_Tick2);
t2.Start();
System.Windows.Forms.Timer t3 = new System.Windows.Forms.Timer();
t3.Interval = 350; // 1 second before clipboard copy is allowed
t3.Tick += new EventHandler(timer_Tick3);
t3.Start();
lvwColumnSorter = new ListViewColumnSorter();
this.gamesListView.ListViewItemSorter = lvwColumnSorter;
if (searchTextBox.Visible)
@@ -237,7 +242,6 @@ namespace AndroidSideloader
void timer_Tick(object sender, EventArgs e)
{
ADB.RunAdbCommandToString("shell input keyevent KEYCODE_WAKEUP");
}
@@ -247,6 +251,10 @@ namespace AndroidSideloader
keyheld = false;
}
void timer_Tick3(object sender, EventArgs e)
{
keyheld2 = false;
}
public async void ChangeTitle(string txt, bool reset = true)
{
this.Invoke(() => { oldTitle = txt; this.Text = "Rookie's Sideloader | " + txt; });
@@ -406,6 +414,7 @@ namespace AndroidSideloader
Thread t1 = new Thread(() =>
{
output += ADB.CopyOBB(dialog.FileName);
Program.form.ChangeTitle("");
});
t1.IsBackground = true;
t1.Start();
@@ -775,6 +784,7 @@ namespace AndroidSideloader
if (Directory.Exists(data))
{
output += ADB.CopyOBB(data);
Program.form.ChangeTitle("");
string extension = Path.GetExtension(data);
if (extension == ".apk")
{
@@ -793,7 +803,7 @@ namespace AndroidSideloader
output.Error = "";
if (output.Error.Contains("reserved"))
output.Output = "";
ChangeTitle("Done.");
ChangeTitle("");
}
}
string[] files = Directory.GetFiles(data);
@@ -808,7 +818,9 @@ namespace AndroidSideloader
string[] folders = Directory.GetDirectories(data);
foreach (string folder in folders)
{
output += ADB.CopyOBB(folder);
Program.form.ChangeTitle("");
Properties.Settings.Default.CurrPckg = dir;
Properties.Settings.Default.Save();
}
@@ -829,13 +841,16 @@ namespace AndroidSideloader
{
ChangeTitle("Sideloading custom install.txt automatically.");
output += Sideloader.RunADBCommandsFromFile(path);
ChangeTitle("Done.");
ChangeTitle("");
}
}
else
{
ChangeTitle($"Installing {Path.GetFileName(data)}...");
output += ADB.Sideload(data);
ChangeTitle("");
}
}
else if (extension == ".obb")
@@ -847,17 +862,17 @@ namespace AndroidSideloader
foldername = Environment.CurrentDirectory + "\\" + foldername;
Directory.CreateDirectory(foldername);
File.Copy(data, foldername + "\\" + filename);
output += ADB.CopyOBB(foldername);
Properties.Settings.Default.CurrPckg = foldername;
Properties.Settings.Default.Save();
path = foldername;
output += ADB.CopyOBB(path);
Directory.Delete(foldername, true);
ChangeTitle("");
}
if (extension == ".txt")
else if (extension == ".txt")
{
ChangeTitle("Sideloading custom install.txt automatically.");
output += Sideloader.RunADBCommandsFromFile(path);
ChangeTitle("Done.");
ChangeTitle("");
}
}
}
@@ -1144,278 +1159,285 @@ without him none of this would be possible
private async void downloadInstallGameButton_Click(object sender, EventArgs e)
{
ChangeTitle("Checking filesize...");
long selectedGamesSize = 0;
int count = 0;
string[] GameSizeGame = new string[1];
if (gamesToAddList.Count > 0)
{
count = gamesToAddList.Count;
GameSizeGame = new string[count];
for (int i = 0; i < count; i++)
GameSizeGame[i] = gamesToAddList[i];
}
else if (gamesListView.SelectedItems.Count > 0)
{
count = gamesListView.SelectedItems.Count;
GameSizeGame = new string[count];
for (int i = 0; i < count; i++)
GameSizeGame[i] = gamesListView.SelectedItems[i].SubItems[SideloaderRCLONE.ReleaseNameIndex].Text;
}
else return;
bool HadError = false;
Thread gameSizeThread = new Thread(() =>
{
for (int i = 0; i < count; i++)
{
selectedGamesSize += SideloaderRCLONE.GetFolderSize(GameSizeGame[i], currentRemote);
if (selectedGamesSize == 0)
{
FlexibleMessageBox.Show($"Couldnt find release {GameSizeGame[i]} on rclone, please deselect and try again or switch mirrors");
HadError = true;
return;
}
}
});
gameSizeThread.Start();
while (gameSizeThread.IsAlive)
await Task.Delay(100);
if (HadError)
return;
DialogResult dialogResult = FlexibleMessageBox.Show($"Are you sure you want to download the selected game(s)? The size is {String.Format("{0:0.00}", (double)selectedGamesSize)} MB", "Are you sure?", MessageBoxButtons.YesNo);
if (dialogResult != DialogResult.Yes)
{
ChangeTitle("");
return;
}
//Add games to the queue
if (gamesToAddList.Count > 0)
gamesQueueList.AddRange(gamesToAddList);
else
{
for (int i = 0; i < gamesListView.SelectedItems.Count; i++)
gamesQueueList.Add(gamesListView.SelectedItems[i].SubItems[SideloaderRCLONE.ReleaseNameIndex].Text);
}
gamesToAddList.Clear();
gamesQueListBox.DataSource = null;
gamesQueListBox.DataSource = gamesQueueList;
if (gamesAreDownloading)
return;
gamesAreDownloading = true;
if (updatedConfig == false && Properties.Settings.Default.autoUpdateConfig == true) //check for config only once per program open and if setting enabled
{
updatedConfig = true;
ChangeTitle("Checking if config is updated and updating config");
progressBar.Style = ProgressBarStyle.Marquee;
await Task.Run(() => SideloaderRCLONE.updateConfig(currentRemote));
progressBar.Style = ProgressBarStyle.Continuous;
}
//Do user json on firsttime
if (Properties.Settings.Default.userJsonOnGameInstall)
{
Thread userJsonThread = new Thread(() => { ChangeTitle("Pushing user.json"); Sideloader.PushUserJsons(); });
userJsonThread.IsBackground = true;
userJsonThread.Start();
}
ProcessOutput output = new ProcessOutput("", "");
string gameName = "";
while (gamesQueueList.Count > 0)
{
gameName = gamesQueueList.ToArray()[0];
string packagename = Sideloader.gameNameToPackageName(gameName);
string dir = Path.GetDirectoryName(gameName);
string gameDirectory = Environment.CurrentDirectory + "\\" + gameName;
string path = gameDirectory;
Directory.CreateDirectory(gameDirectory);
ProcessOutput gameDownloadOutput = new ProcessOutput("", "");
Thread t1 = new Thread(() =>
string namebox = gamesListView.SelectedItems[0].ToString();
string nameboxtranslated = Sideloader.gameNameToSimpleName(namebox);
ChangeTitle($"Checking filesize of {nameboxtranslated}...");
long selectedGamesSize = 0;
int count = 0;
string[] GameSizeGame = new string[1];
if (gamesToAddList.Count > 0)
{
gameDownloadOutput = RCLONE.runRcloneCommand($"copy \"{currentRemote}:{SideloaderRCLONE.RcloneGamesFolder}/{gameName}\" \"{Environment.CurrentDirectory}\\{gameName}\" --progress --drive-acknowledge-abuse --rc", Properties.Settings.Default.BandwithLimit);
count = gamesToAddList.Count;
GameSizeGame = new string[count];
for (int i = 0; i < count; i++)
GameSizeGame[i] = gamesToAddList[i];
}
else if (gamesListView.SelectedItems.Count > 0)
{
count = gamesListView.SelectedItems.Count;
GameSizeGame = new string[count];
for (int i = 0; i < count; i++)
GameSizeGame[i] = gamesListView.SelectedItems[i].SubItems[SideloaderRCLONE.ReleaseNameIndex].Text;
}
else return;
bool HadError = false;
Thread gameSizeThread = new Thread(() =>
{
for (int i = 0; i < count; i++)
{
selectedGamesSize += SideloaderRCLONE.GetFolderSize(GameSizeGame[i], currentRemote);
if (selectedGamesSize == 0)
{
FlexibleMessageBox.Show($"Couldnt find release {GameSizeGame[i]} on rclone, please deselect and try again or switch mirrors");
HadError = true;
return;
}
}
});
t1.IsBackground = true;
t1.Start();
gameSizeThread.Start();
ChangeTitle("Downloading game " + gameName, false);
while (gameSizeThread.IsAlive)
await Task.Delay(100);
int i = 0;
//Download
while (t1.IsAlive)
if (HadError)
return;
progressBar.Value = 0;
progressBar.Style = ProgressBarStyle.Continuous;
DialogResult dialogResult = FlexibleMessageBox.Show($"Are you sure you want to download {nameboxtranslated}? The size is {String.Format("{0:0.00}", (double)selectedGamesSize)} MB", "Are you sure?", MessageBoxButtons.YesNo);
if (dialogResult != DialogResult.Yes)
{
try
{
HttpResponseMessage response = await client.PostAsync("http://127.0.0.1:5572/core/stats", null);
string foo = await response.Content.ReadAsStringAsync();
Debug.WriteLine("RESP CONTENT " + foo);
dynamic results = JsonConvert.DeserializeObject<dynamic>(foo);
float downloadSpeed = results.speed.ToObject<float>();
long allSize = 0;
long downloaded = 0;
dynamic check = results.transferring;
if (results["transferring"] != null)
{
foreach (var obj in results.transferring)
{
allSize += obj["size"].ToObject<long>();
downloaded += obj["bytes"].ToObject<long>();
}
allSize /= 1000000;
downloaded /= 1000000;
Debug.WriteLine("Allsize: " + allSize + "\nDownloaded: " + downloaded + "\nValue: " + (((double)downloaded / (double)allSize) * 100));
try { progressBar.Value = Convert.ToInt32((((double)downloaded / (double)allSize) * 100)); } catch { }
i++;
downloadSpeed /= 1000000;
if (i == 4)
{
i = 0;
float seconds = (allSize - downloaded) / downloadSpeed;
TimeSpan time = TimeSpan.FromSeconds(seconds);
etaLabel.Text = "ETA: " + time.ToString(@"hh\:mm\:ss") + " left";
}
speedLabel.Text = "DLS: " + String.Format("{0:0.00}", downloadSpeed) + " mbps";
}
}
catch { }
await Task.Delay(1000);
ChangeTitle("");
return;
}
//Quota Errors
bool quotaError = false;
if (gameDownloadOutput.Error.Length > 0)
//Add games to the queue
if (gamesToAddList.Count > 0)
gamesQueueList.AddRange(gamesToAddList);
else
{
string err = gameDownloadOutput.Error.ToLower();
if (err.Contains("quota") && err.Contains("exceeded"))
{
FlexibleMessageBox.Show("The download Quota has been reached for this mirror, trying to switch mirrors...");
quotaError = true;
SwitchMirrors();
gamesQueueList.RemoveAt(0);
gamesQueListBox.DataSource = null;
gamesQueListBox.DataSource = gamesQueueList;
}
else if (!gameDownloadOutput.Error.Contains("localhost")) FlexibleMessageBox.Show($"Rclone error: {gameDownloadOutput.Error}");
for (int i = 0; i < gamesListView.SelectedItems.Count; i++)
gamesQueueList.Add(gamesListView.SelectedItems[i].SubItems[SideloaderRCLONE.ReleaseNameIndex].Text);
}
if (quotaError == false)
gamesToAddList.Clear();
gamesQueListBox.DataSource = null;
gamesQueListBox.DataSource = gamesQueueList;
if (gamesAreDownloading)
return;
gamesAreDownloading = true;
if (updatedConfig == false && Properties.Settings.Default.autoUpdateConfig == true) //check for config only once per program open and if setting enabled
{
ADB.WakeDevice();
ADB.DeviceID = GetDeviceID();
quotaTries = 0;
progressBar.Value = 0;
updatedConfig = true;
ChangeTitle("Checking if config is updated and updating config");
progressBar.Style = ProgressBarStyle.Marquee;
ChangeTitle("Installing game apk " + gameName, false);
etaLabel.Text = "ETA: Wait for install...";
speedLabel.Text = "DLS: Done downloading";
await Task.Run(() => SideloaderRCLONE.updateConfig(currentRemote));
progressBar.Style = ProgressBarStyle.Continuous;
}
string[] files = Directory.GetFiles(Environment.CurrentDirectory + "\\" + gameName);
//Do user json on firsttime
if (Properties.Settings.Default.userJsonOnGameInstall)
{
Thread userJsonThread = new Thread(() => { ChangeTitle("Pushing user.json"); Sideloader.PushUserJsons(); });
userJsonThread.IsBackground = true;
userJsonThread.Start();
Debug.WriteLine("Game Folder is: " + Environment.CurrentDirectory + "\\" + gameName);
Debug.WriteLine("FILES IN GAME FOLDER: ");
foreach (string file in files)
}
ProcessOutput output = new ProcessOutput("", "");
string gameName = "";
while (gamesQueueList.Count > 0)
{
gameName = gamesQueueList.ToArray()[0];
string packagename = Sideloader.gameNameToPackageName(gameName);
string dir = Path.GetDirectoryName(gameName);
string gameDirectory = Environment.CurrentDirectory + "\\" + gameName;
string path = gameDirectory;
Directory.CreateDirectory(gameDirectory);
ProcessOutput gameDownloadOutput = new ProcessOutput("", "");
Thread t1 = new Thread(() =>
{
Debug.WriteLine(file);
string extension = Path.GetExtension(file);
if (extension == ".apk")
{
Thread apkThread = new Thread(() =>
{
output += ADB.Sideload(file, packagename);
});
gameDownloadOutput = RCLONE.runRcloneCommand($"copy \"{currentRemote}:{SideloaderRCLONE.RcloneGamesFolder}/{gameName}\" \"{Environment.CurrentDirectory}\\{gameName}\" --progress --drive-acknowledge-abuse --rc", Properties.Settings.Default.BandwithLimit);
});
t1.IsBackground = true;
t1.Start();
apkThread.Start();
while (apkThread.IsAlive)
await Task.Delay(100);
}
if (extension == ".txt")
ChangeTitle("Downloading game " + gameName, false);
int i = 0;
//Download
while (t1.IsAlive)
{
try
{
string fullname = Path.GetFileName(file);
if (fullname.Equals("install.txt") || fullname.Equals("Install.txt"))
HttpResponseMessage response = await client.PostAsync("http://127.0.0.1:5572/core/stats", null);
string foo = await response.Content.ReadAsStringAsync();
Debug.WriteLine("RESP CONTENT " + foo);
dynamic results = JsonConvert.DeserializeObject<dynamic>(foo);
float downloadSpeed = results.speed.ToObject<float>();
long allSize = 0;
long downloaded = 0;
dynamic check = results.transferring;
if (results["transferring"] != null)
{
Thread installtxtThread = new Thread(() =>
foreach (var obj in results.transferring)
{
output += Sideloader.RunADBCommandsFromFile(file);
ChangeTitle("Sideloading custom install.txt automatically.");
allSize += obj["size"].ToObject<long>();
downloaded += obj["bytes"].ToObject<long>();
}
allSize /= 1000000;
downloaded /= 1000000;
Debug.WriteLine("Allsize: " + allSize + "\nDownloaded: " + downloaded + "\nValue: " + (((double)downloaded / (double)allSize) * 100));
try { progressBar.Value = Convert.ToInt32((((double)downloaded / (double)allSize) * 100)); } catch { }
i++;
downloadSpeed /= 1000000;
if (i == 4)
{
i = 0;
float seconds = (allSize - downloaded) / downloadSpeed;
TimeSpan time = TimeSpan.FromSeconds(seconds);
etaLabel.Text = "ETA: " + time.ToString(@"hh\:mm\:ss") + " left";
}
speedLabel.Text = "DLS: " + String.Format("{0:0.00}", downloadSpeed) + " MB/s";
}
}
catch { }
await Task.Delay(1000);
}
//Quota Errors
bool quotaError = false;
if (gameDownloadOutput.Error.Length > 0)
{
string err = gameDownloadOutput.Error.ToLower();
if (err.Contains("quota") && err.Contains("exceeded"))
{
FlexibleMessageBox.Show("The download Quota has been reached for this mirror, trying to switch mirrors...");
quotaError = true;
SwitchMirrors();
gamesQueueList.RemoveAt(0);
gamesQueListBox.DataSource = null;
gamesQueListBox.DataSource = gamesQueueList;
}
else if (!gameDownloadOutput.Error.Contains("localhost")) FlexibleMessageBox.Show($"Rclone error: {gameDownloadOutput.Error}");
}
if (quotaError == false)
{
ADB.WakeDevice();
ADB.DeviceID = GetDeviceID();
quotaTries = 0;
progressBar.Value = 0;
progressBar.Style = ProgressBarStyle.Marquee;
ChangeTitle("Installing game apk " + gameName, false);
etaLabel.Text = "ETA: Wait for install...";
speedLabel.Text = "DLS: Done downloading";
string[] files = Directory.GetFiles(Environment.CurrentDirectory + "\\" + gameName);
Debug.WriteLine("Game Folder is: " + Environment.CurrentDirectory + "\\" + gameName);
Debug.WriteLine("FILES IN GAME FOLDER: ");
foreach (string file in files)
{
Debug.WriteLine(file);
string extension = Path.GetExtension(file);
if (extension == ".apk")
{
Thread apkThread = new Thread(() =>
{
output += ADB.Sideload(file, packagename);
});
installtxtThread.Start();
while (installtxtThread.IsAlive)
apkThread.Start();
while (apkThread.IsAlive)
await Task.Delay(100);
}
if (extension == ".txt")
{
string fullname = Path.GetFileName(file);
if (fullname.Equals("install.txt") || fullname.Equals("Install.txt"))
{
Thread installtxtThread = new Thread(() =>
{
output += Sideloader.RunADBCommandsFromFile(file);
ChangeTitle("Sideloading custom install.txt automatically.");
});
installtxtThread.Start();
while (installtxtThread.IsAlive)
await Task.Delay(100);
}
}
}
Debug.WriteLine(wrDelimiter);
string[] folders = Directory.GetDirectories(Environment.CurrentDirectory + "\\" + gameName);
foreach (string folder in folders)
{
ChangeTitle("Installing game obb " + gameName, false);
string[] obbs = Directory.GetFiles(folder);
foreach (string currObb in obbs)
{
Thread obbThread = new Thread(() =>
{
output += ADB.CopyOBB(folder);
Program.form.ChangeTitle("");
});
obbThread.IsBackground = true;
obbThread.Start();
while (obbThread.IsAlive)
await Task.Delay(100);
}
}
}
Debug.WriteLine(wrDelimiter);
string[] folders = Directory.GetDirectories(Environment.CurrentDirectory + "\\" + gameName);
foreach (string folder in folders)
{
ChangeTitle("Installing game obb " + gameName, false);
string[] obbs = Directory.GetFiles(folder);
foreach (string currObb in obbs)
if (Properties.Settings.Default.deleteAllAfterInstall)
{
Thread obbThread = new Thread(() =>
{
output += ADB.CopyOBB(folder);
});
obbThread.IsBackground = true;
obbThread.Start();
while (obbThread.IsAlive)
await Task.Delay(100);
ChangeTitle("Deleting game files", false);
try { Directory.Delete(Environment.CurrentDirectory + "\\" + gameName, true); } catch (Exception ex) { MessageBox.Show($"Error deleting game files: {ex.Message}"); }
}
}
if (Properties.Settings.Default.deleteAllAfterInstall)
{
ChangeTitle("Deleting game files", false);
try { Directory.Delete(Environment.CurrentDirectory + "\\" + gameName, true); } catch (Exception ex) { MessageBox.Show($"Error deleting game files: {ex.Message}"); }
//Remove current game
gamesQueueList.RemoveAt(0);
gamesQueListBox.DataSource = null;
gamesQueListBox.DataSource = gamesQueueList;
ChangeTitlebarToDevice();
showAvailableSpace();
}
//Remove current game
gamesQueueList.RemoveAt(0);
gamesQueListBox.DataSource = null;
gamesQueListBox.DataSource = gamesQueueList;
ChangeTitlebarToDevice();
showAvailableSpace();
}
progressBar.Style = ProgressBarStyle.Continuous;
etaLabel.Text = "ETA: Finished Queue";
speedLabel.Text = "DLS: Finished Queue";
ProgressText.Text = "";
await CheckForDevice();
ChangeTitlebarToDevice();
gamesAreDownloading = false;
ShowPrcOutput(output);
listappsbtn();
initListView();
}
progressBar.Style = ProgressBarStyle.Continuous;
etaLabel.Text = "ETA: Finished Queue";
speedLabel.Text = "DLS: Finished Queue";
ProgressText.Text = "";
await CheckForDevice();
ChangeTitlebarToDevice();
gamesAreDownloading = false;
ShowPrcOutput(output);
listappsbtn();
initListView();
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
@@ -1625,12 +1647,14 @@ without him none of this would be possible
return;
string CurrentPackageName = gamesListView.SelectedItems[gamesListView.SelectedItems.Count - 1].SubItems[SideloaderRCLONE.PackageNameIndex].Text;
string CurrentReleaseName = gamesListView.SelectedItems[gamesListView.SelectedItems.Count - 1].SubItems[SideloaderRCLONE.ReleaseNameIndex].Text;
if (!keyheld)
if (!keyheld2)
{
if (Properties.Settings.Default.PackageNameToCB)
Clipboard.SetText(CurrentPackageName);
keyheld2 = true;
}
if (!keyheld)
{
string ImagePath = $"{SideloaderRCLONE.ThumbnailsFolder}\\{CurrentPackageName}.jpg";
if (gamesPictureBox.BackgroundImage != null)
gamesPictureBox.BackgroundImage.Dispose();
@@ -1642,7 +1666,7 @@ without him none of this would be possible
keyheld = true;
}
else
gamesPictureBox.BackgroundImage = new Bitmap(360, 203);
gamesPictureBox.BackgroundImage = new Bitmap(367, 214);
string NotePath = $"{SideloaderRCLONE.NotesFolder}\\{CurrentReleaseName}.txt";
if (File.Exists(NotePath))
notesRichTextBox.Text = File.ReadAllText(NotePath);

View File

@@ -103,7 +103,7 @@ namespace AndroidSideloader
prcoutput.Output = output;
prcoutput.Error = error;
}
if (!output.Contains("Game Name;Release Name;"))
if (!output.Contains("Game Name;Release Name;") && !output.Contains("package:"))
Logger.Log($"Rclone error: {error}\nRclone Output: {output}");
if (error.Contains("There is not enough space"))
MessageBox.Show("There isn't enough space on your PC to properly install this game. Please have at least 2x the size of the game you are trying to download/install available on the drive where Rookie is installed.", "NOT ENOUGH SPACE");

View File

@@ -199,14 +199,36 @@ And all of them added to PATH, without ANY of them, the spoofer won't work!";
{
foreach (string[] game in SideloaderRCLONE.games)
{
if (gameName.Equals(game[SideloaderRCLONE.GameNameIndex]))
if (gameName.Contains(game[SideloaderRCLONE.GameNameIndex]))
return game[SideloaderRCLONE.PackageNameIndex];
if (gameName.Equals(game[SideloaderRCLONE.ReleaseNameIndex]))
if (gameName.Contains(game[SideloaderRCLONE.ReleaseNameIndex]))
return game[SideloaderRCLONE.PackageNameIndex];
}
return gameName;
}
public static string PackageNametoGameName(string gameName)
{
foreach (string[] game in SideloaderRCLONE.games)
{
if (gameName.Contains(game[SideloaderRCLONE.PackageNameIndex]))
return game[SideloaderRCLONE.ReleaseNameIndex];
}
return gameName;
}
public static string gameNameToSimpleName(string gameName)
{
foreach (string[] game in SideloaderRCLONE.games)
{
if (gameName.Contains(game[SideloaderRCLONE.GameNameIndex]))
return game[SideloaderRCLONE.GameNameIndex];
if (gameName.Contains(game[SideloaderRCLONE.ReleaseNameIndex]))
return game[SideloaderRCLONE.GameNameIndex];
}
return gameName;
}
//Downloads the required files
public static void downloadFiles()
{

View File

@@ -16,10 +16,12 @@ namespace AndroidSideloader
public static string Repostory { get; set; }
private static string RawGitHubUrl;
private static string GitHubUrl;
static readonly public string LocalVersion = "2.1.3.2";
static readonly public string LocalVersion = "2.1.5";
public static string currentVersion = string.Empty;
public static string changelog = string.Empty;
//Check if there is a new version of the sideloader
private static bool IsUpdateAvailable()
{
HttpClient client = new HttpClient();
@@ -32,6 +34,8 @@ namespace AndroidSideloader
catch { return false; }
return LocalVersion != currentVersion;
}
//Call this to ask the user if they want to update
public static void Update()
{
RawGitHubUrl = $"https://raw.githubusercontent.com/nerdunit/androidsideloader";
@@ -40,11 +44,14 @@ namespace AndroidSideloader
doUpdate();
}
//If the user wants to update
private static void doUpdate()
{
DialogResult dialogResult = FlexibleMessageBox.Show($"There is a new update you have version {LocalVersion}, do you want to update?\nCHANGELOG\n{changelog}", $"Version {currentVersion} is available", MessageBoxButtons.YesNo);
if (dialogResult != DialogResult.Yes)
return;
//Download new sideloader with version appended to file name so there is no chance of overwriting the current exe
try
{
var fileClient = new WebClient();
@@ -56,6 +63,7 @@ namespace AndroidSideloader
Logger.Log($"Starting {AppName} v{currentVersion}.exe");
Process.Start($"{AppName} v{currentVersion}.exe");
//Delete current version
AndroidSideloader.Utilities.GeneralUtilities.Melt();
}
catch { }

View File

@@ -1,3 +1,34 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
RSL 2.1.5
+ Added Releasename to installing messages and download size message.
= Mulitple bugfixes.
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmDums0ACgkQx/Rql1Vo
czc+PRAAmKSXHjNqO6JXpUKIQczrs3q15yZztgmOQMULNUImis3+/ykOxsMJit1A
W6ORtj3i2VH0TDBx/hhRghMPo+dNilyKnCWm928mXc3taMOEOKu+Dz8WfhnuNp0A
ENmV5fKfuChqrn/6jkUY8UG12NM0eu3A+7fH6LvRADxRxESVH81JUtcf4bSAlier
JuL/q67nv8mThFS3tRtjjvmu0nQMCUcvagfwRNFOUW0aob7NBAp6wxTsbxZo0yEq
oVOxyTAOR84IGHpWeDKDyMw+AySMnHQXl9Ty385zg4eHZr/l1uQcK61uNfiqVCK+
Pag6I1+vLs/3Z3v6qD84iUnis/RV2lqiZcenNeTHQgBKzSsxegB5t0WaID7qlnec
655QnEUbLbIxENS7HodMR1+CzWKgmmYpIH9jV+vH0+mTaKnAYmW56q/ae8OmjXqw
6NXSfog3Dv7U8Imq21Q8glxt/CXh1fY0I8JLxpMjbwEDm56fvvzdRAeE3TeXJR0y
CD9HbH/G8oH/OhLaj1UR5y9FR3PLIBhHmnl9VHtxcvv/nrHMQHbM9bAjPUpNdnSg
30yZxPw/eqv8KLhGxxc+cBnXv3p5bNf2j27gY1Q8XbgcL8PAM6NlVBN/9oaDQ5cL
r5Cc4d5r9F+Q+QrhpZlw3jshHdoVKqgc4ut6xBAWulztNWNvLok=
=tySN
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

View File

@@ -1 +1 @@
2.1.3.2
2.1.5