Compare commits

...

28 Commits

Author SHA1 Message Date
harryeffinpotter
b1595931c4 2.4.7 2021-07-25 06:13:39 -04:00
Harry Fn Potter
1e3a9a5a84 -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

RSL 2.4.7

+ Added battery percentage to stats on bottom left.
= Fixed using ENTER key to install option.
= Fixed  using Enter to install from Quick Search.
= Fixed install feed message when using Enter to Install.
= All important message boxes will remain on top
until user selects an option..
= Settings form and Quest Options form will remain on top
until closed.
= Fixed changelog formatting so updater box isn't so wide.

HFP

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

iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD9N54ACgkQx/Rql1Vo
czfz2g/+OEMxQBKrmWaeXpe4CD1jXs92P/JMU6DPBepNNiKtE+ltX1iG/I1Ft/04
JzFLJqqQsVKP9HceZBkNie87C4YdTu5Z3LUEOS626IVlEx1t0cxXilsVeXWrFSSJ
IyAgRbXZKQRVF+nhR0yXLUSjAQqlxLTuu9kxCXOHBPSqw+MmDCukUat9SoJUFpRO
+bteP/Y+ihUHHaBcD9AizJJpTzuCgKrKUtyNDPcXPIcOoosx459+tsG+mOAilEay
UHMwQoe21//mJJSsaCPPNYOWkY/BV1JNA4dDE+eBoK02U+SXVyh50eO1LFlV1wDd
0XL0O2npdVKjhszpWk2LuyErhaRB6EDMJvNvA8RgWHMF8gR20NPPM183ui79XRr1
bPpAXWbNEVn1OOOcAD+wTwLB6BCc1ryuI4zTHejQufWLQdVMaWKxhREo7bqTWTh+
4WPLZEC3JOy4uODb2tTJLz0qCBaxXNdr0usVxbO5OaGSKOBsJ2GsBlfBTNCr6If6
tMMi2DXSTYAuIgESCqFo4cEz2YGEmOrIqQ7nx9tBhGV2bfnClBbbiYAmM15ifRHG
QHmGhak7h/NFTawOGrS4BV2HfViBR1ef7FJ9v3T4chVJN+ED9tLpfMNKuTLOZ3at
dwUOnA4jfDJL2g5YV8ebiAzPS75FSSrQ2wfcyYYyywTdlBc5K58=
=0eX4
-----END PGP SIGNATURE-----
2021-07-25 06:10:49 -04:00
harryeffinpotter
e0e9a68cb9 2.4.6
added colorblind mode.
2021-07-23 18:35:14 -04:00
Harry Fn Potter
19c90f0ad4 -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

RSL 2.4.6

+ Added a colorblind mode for the update list. It can be found in the SETTINGS menu.

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

iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD7Q1UACgkQx/Rql1Vo
czeuyw/9Grjaeaz0fpM1eq4luU2sKUGReCEjRzZlWv++KqJoLY5BxUZ7rkrrb5jD
oZ5yK88er1lgsii1YBMBjr4ub7K7LEJ13KCagCUJX2wjG1FUGbGtiIdfFf+ryFky
2+OfA3thCxmVCbRRHKzYQ7fks0rd1D62S4qQO/xFE1QbckPSFInLz6wno++WP4iT
Ht7g4us8IKs51kGbjGx5EuA9suG5bDQrrx6QoUMORIEGMVJdoUX286KIUpS6iy1G
nMS/kQePg45+2Y6GDDgCtfRDjqie4J2U3UpXaBQnYAr0tcW116Q54VB9d6aArmKu
DfC/JnUCes3eN9Y/vxHXytoy7RLy+VRQiZw0C6deX4N+XrmPXSGsZboU/YMpFKsV
/6q5EXc0SPDK409HSiFCi5GinIp8mnuGJnIRcwWFFxU9kYBMOjTBA2wHSEcneoZa
8aDYd0fTLNyh/W/vwYnH989ihXWg+reHAyeGym+0u9TUqeWAwbGzyoYaLCri36pK
Pp0pQGOQgt/+s+9evKtMt7YcvnadvdoA2FowVp71HlR23fZb9yLctRPI/cJd6U57
3DBOiPJDb8U4pCo7xf3GZgluBRc/KMGqMysi4S3Hpez2yZ68gvGJh5F7f8OVyGHt
CwVhODnbDlX5W8hYMF23K4B8zSaZpnVJQXYQS5SCzPagg/Pbt8E=
=Glvg
-----END PGP SIGNATURE-----
2021-07-23 18:32:26 -04:00
harryeffinpotter
bcc7499807 2.4.5 2021-07-21 16:09:57 -04:00
Harry Fn Potter
0716ca27c4 -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

RSL 2.5.5

= fixed issue where removing userfolder from adb command changes broke install.txt

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

iQIyBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD4fh4ACgkQx/Rql1Vo
czdrvg/3ZzJNCs7+G7Nq4jGNWokm8xNPD8b8YY1zsZy5Vbort0OQVwL875E2UvpS
HDutQWKi9LgUsKRqgXm0T/O/11jTkYqGWowFa9lvuhmFYNiHo+GXirA0Mcsjoxbm
mNp8PI3TE9NjuDj55P4LXXv4v6qngzXsD1A+EqXq/43nKhuv/QWq2rrG52P24MLE
cCK8O1Ir2S0ZpZH5Q/WoeiBJRID+j/ydVuJaXpC95SoBN9TmbSEnAh65gZ5P4eiJ
oYSvgyNtG9y9I5vjTOR3P4khhWhA0NQBNiQPPdi3LuucYcTdKsQb3y3BOQ8ei3Yn
tHxA73Xdfk0mbSlk0GggSUKOLcD4Ij4QQsva4YwG786J2qGf/QvKC0ujf5B/ezzC
bPmWPVl9qJJ+2CVBZ1DuUP/G7+teEz4IGo9VTgiqiwUT61mRv8o7CIdG1RYCNobo
yMX+cHB08KgUb8NE26NrjEm6mqd4AWgvL4Zj/OdKTBdZ/R02WEvQkJgLRji2AZqn
f35TyYxSW64vhOCk1nMpcSJzGfRV0MwA3UU9WOko33ukikXp22dTXtT0LMY2qqZI
vDS7eXHHLI+ctb+gVNms7FagQbDYChSRKy0S5EX6e2EkBGz6jVxfg2lXNfkTHK2V
K8YZkfI5Rx/PKc3pNDIIrdx6h/ya8eEiBCJZ6scLbJvyzNYpfw==
=jTyb
-----END PGP SIGNATURE-----
2021-07-21 16:08:34 -04:00
harryeffinpotter
652d7cb290 2.4.4 2021-07-21 14:13:59 -04:00
harryeffinpotter
919286f85c v2.4.4
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

RSL 2.4.4

= Updated logs to remove all instances of windows user folder for privacy purposes.

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

iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD4Ym8ACgkQx/Rql1Vo
czfCuA//elSOQ1dUQactp0BZ7cdpDcgoW4YwpEzddc96PwVYULsRxNnREIWKTrjg
2IGDhR53M9kTpsQ51lFwn+IAanKSl7dTsMh+yJDuZenKJga6eECaxiDHPu6JWnQY
Hy/zA012f8qoMfK/w0Ti2X3ITMtHGDqhewU9KdNGQNuAp8bH8o6lyqV01QFvyts+
FTGVB/76I9/OpffDX3fTxTS8PYJvGNAArowAOvYFhf2JcjdjpULo/oH9BVAoCoGT
8XmTYU/rAukmpWy3ensq0FxtjdD/tJt2NKgJcEzJDpkuxMYdzWUW7Sum+mexyX7k
VErW/s3w3rUHM/xW7NZgmRcpAqSRwpvvrSFxAKmGXNxEYmWrJ1jM5Nt6zjxzgk8J
0W7v1M+e/qoUz1HB42Fk++lWENhvZcjJkdRIh8NfjufiA5jc0cZXyZMJClXvMA1K
kG2PP4OqPnUNZdSPUafSGGjKlkr35tRV8SY1mx9phnMGgMZaVk6V0TPKVjHTfSsV
FBlFBuUl4EoQUz5bKUNhVszz3Y70aTBRk2M31GjojaBpOrHIj2Z0YiWoFp5maD2o
cfQ4HjhHAQAqyoD4ID9phgP9UOa0T9eoc1otkzCfRMAkBPS2DysFPpqNCdKOuuJy
gtfsvQxhALWe1qdDohIOekb2exmKj4NREGI5UjtgT+7Uf13s0Jo=
=8ePT
-----END PGP SIGNATURE-----
2021-07-21 14:11:27 -04:00
Harry Fn Potter
3be98530b6 -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

RSL 2.4.4

= Updated logs to remove all instances of windows user folder for privacy purposes.

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

iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD4Ym8ACgkQx/Rql1Vo
czfCuA//elSOQ1dUQactp0BZ7cdpDcgoW4YwpEzddc96PwVYULsRxNnREIWKTrjg
2IGDhR53M9kTpsQ51lFwn+IAanKSl7dTsMh+yJDuZenKJga6eECaxiDHPu6JWnQY
Hy/zA012f8qoMfK/w0Ti2X3ITMtHGDqhewU9KdNGQNuAp8bH8o6lyqV01QFvyts+
FTGVB/76I9/OpffDX3fTxTS8PYJvGNAArowAOvYFhf2JcjdjpULo/oH9BVAoCoGT
8XmTYU/rAukmpWy3ensq0FxtjdD/tJt2NKgJcEzJDpkuxMYdzWUW7Sum+mexyX7k
VErW/s3w3rUHM/xW7NZgmRcpAqSRwpvvrSFxAKmGXNxEYmWrJ1jM5Nt6zjxzgk8J
0W7v1M+e/qoUz1HB42Fk++lWENhvZcjJkdRIh8NfjufiA5jc0cZXyZMJClXvMA1K
kG2PP4OqPnUNZdSPUafSGGjKlkr35tRV8SY1mx9phnMGgMZaVk6V0TPKVjHTfSsV
FBlFBuUl4EoQUz5bKUNhVszz3Y70aTBRk2M31GjojaBpOrHIj2Z0YiWoFp5maD2o
cfQ4HjhHAQAqyoD4ID9phgP9UOa0T9eoc1otkzCfRMAkBPS2DysFPpqNCdKOuuJy
gtfsvQxhALWe1qdDohIOekb2exmKj4NREGI5UjtgT+7Uf13s0Jo=
=8ePT
-----END PGP SIGNATURE-----
2021-07-21 14:09:58 -04:00
harryeffinpotter
b4e21a9d5b 2.4.3
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

RSL 2.4.3

= Moved nouns.txt library to a more suitable location.

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

iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD4T5kACgkQx/Rql1Vo
czd9Ew/+LvPnoSuNl3ynFRAjTs8Yo1r2FCY82UfWLLddYTc4waH4s2HZQkUyFBGo
emkvZUa/TZuYGzNLAB4JpPDYYONyF2LmOx8z0Pwtp1+RoEJbGe7WsZa3oF+PQ2AU
+1+hE0u8RW546uaGdzyToX3N5JnPAA2MctG0+3X5J+k8C+CHWgMJyoDnoz62b2Qb
gER2HZMBlrebJwSJto+tKeLRDk2FI4UmQDu2CQpvlwkQMwa98ORRrulaO4LOEH3I
z5S6WyxlcF0Cy4dwD5PVsx4YTHn7Rjy9HHniMYe+vv7LQOz6w+DZZQv6x1BZ2xSF
ZqS76T3x5XAVpcH2JX7gce7dTFVpft/P/C/vOVAa8E2pUp3stuUFoIyVoeWPwgvJ
3wkJFeoG4umlLQZY934Mb6Hb2tu38xlcQd/xsO3aZRPUOZBuYMcbpf8V7qv7f+p+
YDSXwI92ostB3RNkXlUy2onSWrXoLQF70lq3zaNcUeyQt6HILc80h1pXC6VWnITz
RRH9ojt6CWLyzIXKgqdKWKVJJQ5GIR0YITk4kMyGqM/CP3pUPCUKPAVbWK4ajoGA
1A2JBniQwYmCj+vkfQDpwkacK3zmYy/JRpTYdyj7BuOXjGnPpberjdd+jpgGBRCH
IeOpD/kmWaKm5lH1KmEOPGe86bhpQstOba7EsiBM4/x6QpoqVOU=
=yWnO
-----END PGP SIGNATURE-----
2021-07-21 12:51:17 -04:00
Harry Fn Potter
6d3885dc48 -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

RSL 2.4.3

= Moved nouns.txt library to a more suitable location.

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

iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD4T5kACgkQx/Rql1Vo
czd9Ew/+LvPnoSuNl3ynFRAjTs8Yo1r2FCY82UfWLLddYTc4waH4s2HZQkUyFBGo
emkvZUa/TZuYGzNLAB4JpPDYYONyF2LmOx8z0Pwtp1+RoEJbGe7WsZa3oF+PQ2AU
+1+hE0u8RW546uaGdzyToX3N5JnPAA2MctG0+3X5J+k8C+CHWgMJyoDnoz62b2Qb
gER2HZMBlrebJwSJto+tKeLRDk2FI4UmQDu2CQpvlwkQMwa98ORRrulaO4LOEH3I
z5S6WyxlcF0Cy4dwD5PVsx4YTHn7Rjy9HHniMYe+vv7LQOz6w+DZZQv6x1BZ2xSF
ZqS76T3x5XAVpcH2JX7gce7dTFVpft/P/C/vOVAa8E2pUp3stuUFoIyVoeWPwgvJ
3wkJFeoG4umlLQZY934Mb6Hb2tu38xlcQd/xsO3aZRPUOZBuYMcbpf8V7qv7f+p+
YDSXwI92ostB3RNkXlUy2onSWrXoLQF70lq3zaNcUeyQt6HILc80h1pXC6VWnITz
RRH9ojt6CWLyzIXKgqdKWKVJJQ5GIR0YITk4kMyGqM/CP3pUPCUKPAVbWK4ajoGA
1A2JBniQwYmCj+vkfQDpwkacK3zmYy/JRpTYdyj7BuOXjGnPpberjdd+jpgGBRCH
IeOpD/kmWaKm5lH1KmEOPGe86bhpQstOba7EsiBM4/x6QpoqVOU=
=yWnO
-----END PGP SIGNATURE-----
2021-07-21 12:49:13 -04:00
pmow
8aff424ccc add nouns text file 2021-07-20 08:26:26 -04:00
Harry Fn Potter
f50ebdd28c Fixed QU Settings config installing when not set. 2021-07-20 04:00:31 -04:00
harryeffinpotter
5608565275 2.4.2
2.4.2
2021-07-20 02:18:56 -04:00
Harry Fn Potter
9f783b3b1a 2.4.2 2021-07-20 02:17:18 -04:00
harryeffinpotter
02156985aa 2.4.1 2021-07-20 01:26:34 -04:00
Harry Fn Potter
a81cb1e496 2.4.1 2021-07-20 01:25:09 -04:00
harryeffinpotter
688bf0a274 2.4hf 2021-07-20 01:23:00 -04:00
Harry Fn Potter
5d84133c3e Fixed issues with debuglog and crashlog upload. Both can now be shared with moderation staff without issue. 2021-07-20 01:16:46 -04:00
Harry Fn Potter
8e9e5cfb88 crashfix if no nouns.txt 2021-07-18 23:06:05 -04:00
Harry Fn Potter
3d19cab51c updater wont work with 3 digits or HF for some reason. 2021-07-18 20:18:54 -04:00
Harry Fn Potter
e8a3f5e34e 2.3HF1 2021-07-18 20:13:44 -04:00
Harry Fn Potter
e1ed9af1d7 Added check for nouns.txt 2021-07-18 20:09:00 -04:00
Harry Fn Potter
d154d67c57 BeugLog server support, MAJOR OBB BREAK FIX. 2021-07-18 19:42:10 -04:00
Harry Fn Potter
fb9d4ab0d3 Fixed debuglog code issues until server until debuglog server is live 2021-07-18 01:25:27 -04:00
harryeffinpotter
2f34ac8848 Merge pull request #67 from SamHoque/master
bugs/download-progress-bar-not-working-as-intended
2021-07-17 20:13:25 -04:00
Harry Fn Potter
9e352c3144 changelog to add 2.1.1 hotfix 2021-07-17 15:45:13 -04:00
Sam Hoque
d66e6f55d3 bugs/download-progress-bar-not-working-as-intended
- Fixed the progress bar being stuck in marquee mode.
2021-07-17 14:25:05 +06:00
26 changed files with 8027 additions and 595 deletions

73
ADB.cs
View File

@@ -3,6 +3,7 @@ using System.Diagnostics;
using System.IO;
using System.Threading;
using System.Windows.Forms;
using JR.Utils.GUI.Forms;
using Newtonsoft.Json;
namespace AndroidSideloader
@@ -27,8 +28,12 @@ namespace AndroidSideloader
}
if (!command.Contains("dumpsys") && !command.Contains("shell pm list packages") && !command.Contains("KEYCODE_WAKEUP"))
{
string loggedcommand = Utilities.StringUtilities.RemoveEverythingBeforeFirst(command, "adb.exe");
Logger.Log($"Running command{loggedcommand}");
string logcmd = command;
if (logcmd.Contains(Environment.CurrentDirectory))
logcmd = logcmd.Replace($"{Environment.CurrentDirectory}", $"CurrentDirectory");
Logger.Log($"Running command: {logcmd}");
}
adb.StartInfo.FileName = adbFilePath;
adb.StartInfo.Arguments = command;
@@ -64,12 +69,12 @@ namespace AndroidSideloader
adb.WaitForExit();
if (error.Contains("ADB_VENDOR_KEYS"))
{
MessageBox.Show("Please check inside your headset for ADB DEBUGGING prompt, check box to \"Always allow from this computer.\" and hit OK.");
FlexibleMessageBox.Show("Please check inside your headset for ADB DEBUGGING prompt, check box to \"Always allow from this computer.\" and hit OK.");
ADB.WakeDevice();
}
if (error.Contains("not enough storage space"))
{
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.");
FlexibleMessageBox.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") && !output.Contains("KEYCODE_WAKEUP") && !output.Contains("KEYCODE_WAKEUP") && !output.Contains("Filesystem") && !output.Contains("package:") && !output.Equals(null))
Logger.Log(output);
@@ -82,11 +87,12 @@ namespace AndroidSideloader
Properties.Settings.Default.ADBFolder = adbFolderPath;
Properties.Settings.Default.ADBPath = adbFilePath;
Properties.Settings.Default.Save();
string logcmd = command;
if (logcmd.Contains(Environment.CurrentDirectory))
logcmd = logcmd.Replace($"{Environment.CurrentDirectory}", $"CurrentDirectory");
Logger.Log($"Running command: {logcmd}");
Logger.Log($"Running command {command}");
adb.StartInfo.FileName = "cmd.exe";
adb.StartInfo.RedirectStandardError = true;
adb.StartInfo.RedirectStandardInput = true;
@@ -121,7 +127,7 @@ namespace AndroidSideloader
adb.WaitForExit();
if (error.Contains("ADB_VENDOR_KEYS"))
{
MessageBox.Show("Please check inside your headset for ADB DEBUGGING prompt, check box to \"Always allow from this computer.\" and hit OK.");
FlexibleMessageBox.Show("Please check inside your headset for ADB DEBUGGING prompt, check box to \"Always allow from this computer.\" and hit OK.");
ADB.WakeDevice();
}
Logger.Log(output);
@@ -135,7 +141,10 @@ namespace AndroidSideloader
Properties.Settings.Default.ADBPath = adbFilePath;
Properties.Settings.Default.Save();
Logger.Log($"Running command {command}");
string logcmd = command;
if (logcmd.Contains(Environment.CurrentDirectory))
logcmd = logcmd.Replace($"{Environment.CurrentDirectory}", $"CurrentDirectory");
Logger.Log($"Running command: {logcmd}");
adb.StartInfo.FileName = @"C:\windows\system32\cmd.exe";
adb.StartInfo.Arguments = command;
adb.StartInfo.RedirectStandardError = true;
@@ -171,7 +180,7 @@ namespace AndroidSideloader
adb.WaitForExit();
if (error.Contains("ADB_VENDOR_KEYS"))
{
MessageBox.Show("Please check inside your headset for ADB DEBUGGING prompt, check box to \"Always allow from this computer.\" and hit OK.");
FlexibleMessageBox.Show("Please check inside your headset for ADB DEBUGGING prompt, check box to \"Always allow from this computer.\" and hit OK.");
ADB.WakeDevice();
}
Logger.Log(output);
@@ -247,10 +256,10 @@ namespace AndroidSideloader
if (response.Contains("cannot") || String.IsNullOrEmpty(response))
{
DialogResult dialogResult = MessageBox.Show("Either your Quest is idle or you have rebooted the device.\nRSL's wireless ADB will persist on PC reboot but not on Quest reboot.\n\nNOTE: If you haven't rebooted your Quest it may be idle.\n\nTo prevent this press the HOLD button 2x prior to launching RSL. Or\nkeep your Quest plugged into power to keep it permanently \"awake\".\n\nHave you assigned your Quest a static IP in your router configuration?\n\nIf you no longer want to use Wireless ADB or your device was idle please hit CANCEL.", "DEVICE REBOOTED\\IDLE?", MessageBoxButtons.YesNoCancel);
DialogResult dialogResult = FlexibleMessageBox.Show("Either your Quest is idle or you have rebooted the device.\nRSL's wireless ADB will persist on PC reboot but not on Quest reboot.\n\nNOTE: If you haven't rebooted your Quest it may be idle.\n\nTo prevent this press the HOLD button 2x prior to launching RSL. Or\nkeep your Quest plugged into power to keep it permanently \"awake\".\n\nHave you assigned your Quest a static IP in your router configuration?\n\nIf you no longer want to use Wireless ADB or your device was idle please hit CANCEL.", "DEVICE REBOOTED\\IDLE?", MessageBoxButtons.YesNoCancel);
if (dialogResult == DialogResult.Cancel)
{
DialogResult dialogResult2 = MessageBox.Show("Press OK to remove your stored IP address.\nIf your Quest went idle press the HOLD button on the device twice then press CANCEL to reconnect.", "REMOVE STORED IP?", MessageBoxButtons.OKCancel);
DialogResult dialogResult2 = FlexibleMessageBox.Show("Press OK to remove your stored IP address.\nIf your Quest went idle press the HOLD button on the device twice then press CANCEL to reconnect.", "REMOVE STORED IP?", MessageBoxButtons.OKCancel);
if (dialogResult2 == DialogResult.Cancel)
WakeDevice();
if (dialogResult2 == DialogResult.OK)
@@ -263,7 +272,7 @@ namespace AndroidSideloader
}
else if (dialogResult == DialogResult.Yes)
{
MessageBox.Show("Connect your Quest to USB so we can reconnect to your saved IP address!");
FlexibleMessageBox.Show("Connect your Quest to USB so we can reconnect to your saved IP address!");
RunAdbCommandToString("devices");
Thread.Sleep(250);
RunAdbCommandToString("disconnect");
@@ -289,10 +298,10 @@ namespace AndroidSideloader
}
else if (dialogResult == DialogResult.No)
{
MessageBox.Show("You must repeat the entire connection process, press OK to begin.", "Reconfigure Wireless ADB", MessageBoxButtons.OK);
FlexibleMessageBox.Show("You must repeat the entire connection process, press OK to begin.", "Reconfigure Wireless ADB", MessageBoxButtons.OK);
RunAdbCommandToString("devices");
RunAdbCommandToString("tcpip 5555");
MessageBox.Show("Press OK to get your Quest's local IP address.", "Obtain local IP address", MessageBoxButtons.OK);
FlexibleMessageBox.Show("Press OK to get your Quest's local IP address.", "Obtain local IP address", MessageBoxButtons.OK);
Thread.Sleep(1000);
string input = RunAdbCommandToString("shell ip route").Output;
@@ -304,7 +313,7 @@ namespace AndroidSideloader
{
string IPaddr = strArrayOne[8];
string IPcmnd = "connect " + IPaddr + ":5555";
MessageBox.Show($"Your Quest's local IP address is: {IPaddr}\n\nPlease disconnect your Quest then wait 2 seconds.\nOnce it is disconnected hit OK", "", MessageBoxButtons.OK);
FlexibleMessageBox.Show($"Your Quest's local IP address is: {IPaddr}\n\nPlease disconnect your Quest then wait 2 seconds.\nOnce it is disconnected hit OK", "", MessageBoxButtons.OK);
Thread.Sleep(2000);
ADB.RunAdbCommandToString(IPcmnd);
Properties.Settings.Default.IPAddress = IPcmnd;
@@ -341,7 +350,7 @@ namespace AndroidSideloader
string BackupFolder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), $"Rookie Backups");
if (out2.Contains("offline"))
{
DialogResult dialogResult2 = MessageBox.Show("Device is offline. Press Yes to reconnect, or if you don't wish to connect and just want to download the game (requires unchecking \"Delete games after install\" from settings menu) then press No.", "Device offline.", MessageBoxButtons.YesNoCancel);
DialogResult dialogResult2 = FlexibleMessageBox.Show("Device is offline. Press Yes to reconnect, or if you don't wish to connect and just want to download the game (requires unchecking \"Delete games after install\" from settings menu) then press No.", "Device offline.", MessageBoxButtons.YesNoCancel);
if (dialogResult2 == DialogResult.Yes)
ADB.WakeDevice();
}
@@ -351,22 +360,22 @@ namespace AndroidSideloader
ret.Output = string.Empty;
MessageBox.Show($"In place upgrade for {packagename} failed. We will need to upgrade by uninstalling, and keeping savedata isn't guaranteed. Continue?", "UPGRADE FAILED!", MessageBoxButtons.OKCancel);
FlexibleMessageBox.Show($"In place upgrade for {packagename} failed. We will need to upgrade by uninstalling, and keeping savedata isn't guaranteed. Continue?", "UPGRADE FAILED!", MessageBoxButtons.OKCancel);
string date_str = DateTime.Today.ToString("yyyy.MM.dd");
string CurrBackups = Path.Combine(BackupFolder, date_str);
MessageBox.Show($"Searching for save files...", "Searching!", MessageBoxButtons.OK);
FlexibleMessageBox.Show($"Searching for save files...", "Searching!", MessageBoxButtons.OK);
if (Directory.Exists($"/sdcard/Android/data/{packagename}"))
{
MessageBox.Show($"Trying to backup save to Documents\\Rookie Backups\\{date_str}(YYYY.MM.DD)\\{packagename}", "Save files found", MessageBoxButtons.OK);
FlexibleMessageBox.Show($"Trying to backup save to Documents\\Rookie Backups\\{date_str}(YYYY.MM.DD)\\{packagename}", "Save files found", MessageBoxButtons.OK);
Directory.CreateDirectory(CurrBackups);
ADB.RunAdbCommandToString($"pull \"/sdcard/Android/data/{packagename}\" \"{CurrBackups}\"");
}
else
{
DialogResult dialogResult = MessageBox.Show($"No savedata found! Continue with the uninstall!", "None Found", MessageBoxButtons.OK);
DialogResult dialogResult = FlexibleMessageBox.Show($"No savedata found! Continue with the uninstall!", "None Found", MessageBoxButtons.OK);
if (dialogResult == DialogResult.Cancel)
{
return ret;
@@ -379,13 +388,15 @@ namespace AndroidSideloader
}
ret += RunAdbCommandToString($"install -g -r \"{path}\"");
}
string gamenameforQU = Sideloader.PackageNametoGameName(packagename);
if (File.Exists($"{Properties.Settings.Default.MainDir}\\Config.Json") && gamenameforQU.Contains("-QU") || path.Contains("-QU"))
string gamenameforQU = Sideloader.PackageNametoGameName(packagename);
if (Properties.Settings.Default.QUturnedon)
{
string gameName = packagename;
packagename = Sideloader.gameNameToPackageName(gameName);
if (gamenameforQU.Contains("-QU") || path.Contains("-QU"))
{
string gameName = packagename;
packagename = Sideloader.gameNameToPackageName(gameName);
Program.form.ChangeTitle("Pushing Custom QU S3 Config.JSON.");
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"))
@@ -410,8 +421,10 @@ namespace AndroidSideloader
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("");
return ret;
}
@@ -421,11 +434,7 @@ namespace AndroidSideloader
WakeDevice();
if (Path.GetDirectoryName(path).Contains(".") && !Path.GetDirectoryName(path).Contains("_data") || path.Contains("."))
{
var ext = System.IO.Path.GetExtension(path);
if (ext == String.Empty)
return RunAdbCommandToString($"push \"{path}\" \"/sdcard/Android/obb\"");
else
return RunAdbCommandToString($"push \"{Path.GetDirectoryName(path)}\" /sdcard/Android/obb");
return RunAdbCommandToString($"push \"{path}\" \"/sdcard/Android/obb\"");
}
return new ProcessOutput();
}

View File

@@ -260,6 +260,11 @@
<ItemGroup>
<Content Include="changelog.txt" />
<Content Include="icon.ico" />
<None Include="Resources\battery11.png" />
<None Include="Resources\battery.png" />
<None Include="Resources\battery1.png" />
<Content Include="Resources\bluekey.png" />
<Content Include="Resources\redkey.png" />
<None Include="Resources\greenkey.png" />
<None Include="Resources\orangekey.png" />
<None Include="Resources\SearchGlass.PNG" />

View File

@@ -51,7 +51,7 @@
<value>White</value>
</setting>
<setting name="FontStyle" serializeAs="String">
<value>Microsoft Sans Serif, 12pt</value>
<value>Microsoft Sans Serif, 11pt</value>
</setting>
<setting name="BackPicturePath" serializeAs="String">
<value />
@@ -131,18 +131,24 @@
<setting name="DownUpHeld" serializeAs="String">
<value>False</value>
</setting>
<setting name="CurrentLogTitle" serializeAs="String">
<setting name="CurrentLogPath" serializeAs="String">
<value />
</setting>
<setting name="CurrentLogName" serializeAs="String">
<value />
</setting>
<setting name="CurrentCrashTitle" serializeAs="String">
<setting name="CurrentCrashPath" serializeAs="String">
<value />
</setting>
<setting name="CurrentCrashName" serializeAs="String">
<value />
</setting>
<setting name="QUturnedon" serializeAs="String">
<value>False</value>
</setting>
<setting name="QblindOn" serializeAs="String">
<value>False</value>
</setting>
</AndroidSideloader.Properties.Settings>
<AndroidADB.Sideloader.Properties.Settings>
<setting name="checkForUpdates" serializeAs="String">

View File

@@ -380,6 +380,7 @@ namespace JR.Utils.GUI.Forms
//
// FlexibleMessageBoxForm
//
this.TopMost = true;
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(260, 102);

481
MainForm.Designer.cs generated
View File

@@ -41,6 +41,8 @@
this.copyBulkObbButton = new System.Windows.Forms.Button();
this.downloadInstallGameButton = new System.Windows.Forms.Button();
this.panel1 = new System.Windows.Forms.Panel();
this.BatteryLbl = new System.Windows.Forms.Label();
this.pictureBox5 = new System.Windows.Forms.PictureBox();
this.downloadingLabel = new System.Windows.Forms.Label();
this.aboutBtn = new System.Windows.Forms.Button();
this.settingsButton = new System.Windows.Forms.Button();
@@ -78,10 +80,6 @@
this.label3 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.label5 = new System.Windows.Forms.Label();
this.pictureBox3 = new System.Windows.Forms.PictureBox();
this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.gamesPictureBox = new System.Windows.Forms.PictureBox();
this.pictureBox4 = new System.Windows.Forms.PictureBox();
this.label6 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
@@ -89,20 +87,24 @@
this.ADBcommandbox = new System.Windows.Forms.TextBox();
this.label11 = new System.Windows.Forms.Label();
this.label9 = new System.Windows.Forms.Label();
this.pictureBox4 = new System.Windows.Forms.PictureBox();
this.pictureBox3 = new System.Windows.Forms.PictureBox();
this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.gamesPictureBox = new System.Windows.Forms.PictureBox();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox5)).BeginInit();
this.otherContainer.SuspendLayout();
this.backupContainer.SuspendLayout();
this.sideloadContainer.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox4)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gamesPictureBox)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox4)).BeginInit();
this.SuspendLayout();
//
// m_combo
//
this.m_combo.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.m_combo.BackColor = global::AndroidSideloader.Properties.Settings.Default.ComboBoxColor;
this.m_combo.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "ComboBoxColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.m_combo.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
@@ -110,10 +112,9 @@
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(303, 10);
this.m_combo.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.m_combo.Location = new System.Drawing.Point(227, 8);
this.m_combo.Name = "m_combo";
this.m_combo.Size = new System.Drawing.Size(469, 33);
this.m_combo.Size = new System.Drawing.Size(353, 24);
this.m_combo.TabIndex = 0;
this.m_combo.Text = "Select an app to uninstall...";
//
@@ -128,11 +129,10 @@
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, 170);
this.startsideloadbutton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.startsideloadbutton.Location = new System.Drawing.Point(0, 140);
this.startsideloadbutton.Name = "startsideloadbutton";
this.startsideloadbutton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.startsideloadbutton.Size = new System.Drawing.Size(291, 34);
this.startsideloadbutton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.startsideloadbutton.Size = new System.Drawing.Size(218, 28);
this.startsideloadbutton.TabIndex = 5;
this.startsideloadbutton.Text = "Sideload APK";
this.startsideloadbutton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -152,9 +152,8 @@
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, 4, 4, 4);
this.devicesbutton.Name = "devicesbutton";
this.devicesbutton.Size = new System.Drawing.Size(291, 34);
this.devicesbutton.Size = new System.Drawing.Size(218, 28);
this.devicesbutton.TabIndex = 0;
this.devicesbutton.Text = "RECONNECT DEVICE";
this.devicesbutton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -173,10 +172,9 @@
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, 4, 4, 4);
this.obbcopybutton.Name = "obbcopybutton";
this.obbcopybutton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.obbcopybutton.Size = new System.Drawing.Size(291, 34);
this.obbcopybutton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.obbcopybutton.Size = new System.Drawing.Size(218, 28);
this.obbcopybutton.TabIndex = 0;
this.obbcopybutton.Text = "Copy OBB";
this.obbcopybutton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -194,11 +192,10 @@
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, 34);
this.backupbutton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.backupbutton.Location = new System.Drawing.Point(0, 28);
this.backupbutton.Name = "backupbutton";
this.backupbutton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.backupbutton.Size = new System.Drawing.Size(291, 34);
this.backupbutton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.backupbutton.Size = new System.Drawing.Size(218, 28);
this.backupbutton.TabIndex = 1;
this.backupbutton.Text = "Backup Gamedata";
this.backupbutton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -217,10 +214,9 @@
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, 4, 4, 4);
this.restorebutton.Name = "restorebutton";
this.restorebutton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.restorebutton.Size = new System.Drawing.Size(291, 34);
this.restorebutton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.restorebutton.Size = new System.Drawing.Size(218, 28);
this.restorebutton.TabIndex = 0;
this.restorebutton.Text = "Restore Gamedata";
this.restorebutton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -238,11 +234,10 @@
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, 68);
this.getApkButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.getApkButton.Location = new System.Drawing.Point(0, 56);
this.getApkButton.Name = "getApkButton";
this.getApkButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.getApkButton.Size = new System.Drawing.Size(291, 34);
this.getApkButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.getApkButton.Size = new System.Drawing.Size(218, 28);
this.getApkButton.TabIndex = 2;
this.getApkButton.Text = "Extract Apk from device";
this.getApkButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -260,11 +255,10 @@
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, 102);
this.uninstallAppButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.uninstallAppButton.Location = new System.Drawing.Point(0, 84);
this.uninstallAppButton.Name = "uninstallAppButton";
this.uninstallAppButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.uninstallAppButton.Size = new System.Drawing.Size(291, 34);
this.uninstallAppButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.uninstallAppButton.Size = new System.Drawing.Size(218, 28);
this.uninstallAppButton.TabIndex = 3;
this.uninstallAppButton.Text = "Uninstall Selected App";
this.uninstallAppButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -282,11 +276,10 @@
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, 136);
this.sideloadFolderButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.sideloadFolderButton.Location = new System.Drawing.Point(0, 112);
this.sideloadFolderButton.Name = "sideloadFolderButton";
this.sideloadFolderButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.sideloadFolderButton.Size = new System.Drawing.Size(291, 34);
this.sideloadFolderButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.sideloadFolderButton.Size = new System.Drawing.Size(218, 28);
this.sideloadFolderButton.TabIndex = 4;
this.sideloadFolderButton.Text = "Sideload Folder (recursive)";
this.sideloadFolderButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -299,10 +292,9 @@
| 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(304, 543);
this.progressBar.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.progressBar.Location = new System.Drawing.Point(224, 441);
this.progressBar.Name = "progressBar";
this.progressBar.Size = new System.Drawing.Size(489, 31);
this.progressBar.Size = new System.Drawing.Size(371, 25);
this.progressBar.TabIndex = 7;
//
// copyBulkObbButton
@@ -316,11 +308,10 @@
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, 34);
this.copyBulkObbButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.copyBulkObbButton.Location = new System.Drawing.Point(0, 28);
this.copyBulkObbButton.Name = "copyBulkObbButton";
this.copyBulkObbButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.copyBulkObbButton.Size = new System.Drawing.Size(291, 34);
this.copyBulkObbButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.copyBulkObbButton.Size = new System.Drawing.Size(218, 28);
this.copyBulkObbButton.TabIndex = 1;
this.copyBulkObbButton.Text = "Recursive Copy OBB";
this.copyBulkObbButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -338,10 +329,9 @@
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(801, 540);
this.downloadInstallGameButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.downloadInstallGameButton.Location = new System.Drawing.Point(601, 439);
this.downloadInstallGameButton.Name = "downloadInstallGameButton";
this.downloadInstallGameButton.Size = new System.Drawing.Size(495, 37);
this.downloadInstallGameButton.Size = new System.Drawing.Size(369, 30);
this.downloadInstallGameButton.TabIndex = 8;
this.downloadInstallGameButton.Text = "Download and Install Game/Add to Queue";
this.downloadInstallGameButton.UseVisualStyleBackColor = false;
@@ -351,6 +341,8 @@
//
this.panel1.AutoScroll = true;
this.panel1.BackColor = global::AndroidSideloader.Properties.Settings.Default.ButtonColor;
this.panel1.Controls.Add(this.BatteryLbl);
this.panel1.Controls.Add(this.pictureBox5);
this.panel1.Controls.Add(this.downloadingLabel);
this.panel1.Controls.Add(this.aboutBtn);
this.panel1.Controls.Add(this.settingsButton);
@@ -367,21 +359,44 @@
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(3, 2, 3, 2);
this.panel1.Margin = new System.Windows.Forms.Padding(2);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(291, 887);
this.panel1.Size = new System.Drawing.Size(218, 721);
this.panel1.TabIndex = 73;
//
// BatteryLbl
//
this.BatteryLbl.AutoSize = true;
this.BatteryLbl.BackColor = System.Drawing.Color.Transparent;
this.BatteryLbl.Font = new System.Drawing.Font("Microsoft Sans Serif", 10.2F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.BatteryLbl.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.BatteryLbl.Location = new System.Drawing.Point(157, 580);
this.BatteryLbl.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.BatteryLbl.Name = "BatteryLbl";
this.BatteryLbl.Size = new System.Drawing.Size(47, 17);
this.BatteryLbl.TabIndex = 84;
this.BatteryLbl.Text = "N/A%";
//
// pictureBox5
//
this.pictureBox5.BackColor = System.Drawing.Color.Transparent;
this.pictureBox5.Image = global::AndroidSideloader.Properties.Resources.battery11;
this.pictureBox5.Location = new System.Drawing.Point(155, 576);
this.pictureBox5.Margin = new System.Windows.Forms.Padding(2);
this.pictureBox5.Name = "pictureBox5";
this.pictureBox5.Size = new System.Drawing.Size(55, 29);
this.pictureBox5.TabIndex = 85;
this.pictureBox5.TabStop = false;
//
// downloadingLabel
//
this.downloadingLabel.AutoSize = true;
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(-4, 847);
this.downloadingLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.downloadingLabel.Location = new System.Drawing.Point(-3, 688);
this.downloadingLabel.Name = "downloadingLabel";
this.downloadingLabel.Size = new System.Drawing.Size(0, 24);
this.downloadingLabel.Size = new System.Drawing.Size(0, 18);
this.downloadingLabel.TabIndex = 83;
//
// aboutBtn
@@ -396,10 +411,9 @@
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, 732);
this.aboutBtn.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.aboutBtn.Location = new System.Drawing.Point(0, 596);
this.aboutBtn.Name = "aboutBtn";
this.aboutBtn.Size = new System.Drawing.Size(291, 34);
this.aboutBtn.Size = new System.Drawing.Size(218, 28);
this.aboutBtn.TabIndex = 5;
this.aboutBtn.Text = "ABOUT";
this.aboutBtn.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -418,10 +432,9 @@
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, 698);
this.settingsButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.settingsButton.Location = new System.Drawing.Point(0, 568);
this.settingsButton.Name = "settingsButton";
this.settingsButton.Size = new System.Drawing.Size(291, 34);
this.settingsButton.Size = new System.Drawing.Size(218, 28);
this.settingsButton.TabIndex = 4;
this.settingsButton.Text = "SETTINGS";
this.settingsButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -439,10 +452,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, 492);
this.otherContainer.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.otherContainer.Location = new System.Drawing.Point(0, 401);
this.otherContainer.Margin = new System.Windows.Forms.Padding(2);
this.otherContainer.Name = "otherContainer";
this.otherContainer.Size = new System.Drawing.Size(291, 206);
this.otherContainer.Size = new System.Drawing.Size(218, 167);
this.otherContainer.TabIndex = 80;
//
// InstallQUset
@@ -456,11 +469,10 @@
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, 170);
this.InstallQUset.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.InstallQUset.Location = new System.Drawing.Point(0, 140);
this.InstallQUset.Name = "InstallQUset";
this.InstallQUset.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.InstallQUset.Size = new System.Drawing.Size(291, 34);
this.InstallQUset.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.InstallQUset.Size = new System.Drawing.Size(218, 28);
this.InstallQUset.TabIndex = 5;
this.InstallQUset.Text = "Install QU Setting";
this.InstallQUset.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -478,11 +490,10 @@
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, 136);
this.removeQUSetting.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.removeQUSetting.Location = new System.Drawing.Point(0, 112);
this.removeQUSetting.Name = "removeQUSetting";
this.removeQUSetting.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.removeQUSetting.Size = new System.Drawing.Size(291, 34);
this.removeQUSetting.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.removeQUSetting.Size = new System.Drawing.Size(218, 28);
this.removeQUSetting.TabIndex = 4;
this.removeQUSetting.Text = "Remove QU Setting";
this.removeQUSetting.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -500,11 +511,10 @@
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, 102);
this.ThemeChangerButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.ThemeChangerButton.Location = new System.Drawing.Point(0, 84);
this.ThemeChangerButton.Name = "ThemeChangerButton";
this.ThemeChangerButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.ThemeChangerButton.Size = new System.Drawing.Size(291, 34);
this.ThemeChangerButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.ThemeChangerButton.Size = new System.Drawing.Size(218, 28);
this.ThemeChangerButton.TabIndex = 3;
this.ThemeChangerButton.Text = "Theme Changer";
this.ThemeChangerButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -522,11 +532,10 @@
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, 68);
this.QuestOptionsButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.QuestOptionsButton.Location = new System.Drawing.Point(0, 56);
this.QuestOptionsButton.Name = "QuestOptionsButton";
this.QuestOptionsButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.QuestOptionsButton.Size = new System.Drawing.Size(291, 34);
this.QuestOptionsButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.QuestOptionsButton.Size = new System.Drawing.Size(218, 28);
this.QuestOptionsButton.TabIndex = 2;
this.QuestOptionsButton.Text = "Quest Options";
this.QuestOptionsButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -544,11 +553,10 @@
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, 34);
this.ADBWirelessDisable.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.ADBWirelessDisable.Location = new System.Drawing.Point(0, 28);
this.ADBWirelessDisable.Name = "ADBWirelessDisable";
this.ADBWirelessDisable.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.ADBWirelessDisable.Size = new System.Drawing.Size(291, 34);
this.ADBWirelessDisable.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.ADBWirelessDisable.Size = new System.Drawing.Size(218, 28);
this.ADBWirelessDisable.TabIndex = 1;
this.ADBWirelessDisable.Text = "Disable WIreless ADB";
this.ADBWirelessDisable.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -567,10 +575,9 @@
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, 4, 4, 4);
this.ADBWirelessEnable.Name = "ADBWirelessEnable";
this.ADBWirelessEnable.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.ADBWirelessEnable.Size = new System.Drawing.Size(291, 34);
this.ADBWirelessEnable.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.ADBWirelessEnable.Size = new System.Drawing.Size(218, 28);
this.ADBWirelessEnable.TabIndex = 0;
this.ADBWirelessEnable.Text = "Enable Wireless ADB";
this.ADBWirelessEnable.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -589,11 +596,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, 458);
this.otherDrop.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.otherDrop.Location = new System.Drawing.Point(0, 373);
this.otherDrop.Margin = new System.Windows.Forms.Padding(2);
this.otherDrop.Name = "otherDrop";
this.otherDrop.Padding = new System.Windows.Forms.Padding(9, 0, 0, 0);
this.otherDrop.Size = new System.Drawing.Size(291, 34);
this.otherDrop.Padding = new System.Windows.Forms.Padding(7, 0, 0, 0);
this.otherDrop.Size = new System.Drawing.Size(218, 28);
this.otherDrop.TabIndex = 3;
this.otherDrop.Text = "> OTHER";
this.otherDrop.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -607,10 +614,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, 384);
this.backupContainer.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.backupContainer.Location = new System.Drawing.Point(0, 313);
this.backupContainer.Margin = new System.Windows.Forms.Padding(2);
this.backupContainer.Name = "backupContainer";
this.backupContainer.Size = new System.Drawing.Size(291, 74);
this.backupContainer.Size = new System.Drawing.Size(218, 60);
this.backupContainer.TabIndex = 76;
//
// backupDrop
@@ -625,11 +632,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, 350);
this.backupDrop.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.backupDrop.Location = new System.Drawing.Point(0, 285);
this.backupDrop.Margin = new System.Windows.Forms.Padding(2);
this.backupDrop.Name = "backupDrop";
this.backupDrop.Padding = new System.Windows.Forms.Padding(9, 0, 0, 0);
this.backupDrop.Size = new System.Drawing.Size(291, 34);
this.backupDrop.Padding = new System.Windows.Forms.Padding(7, 0, 0, 0);
this.backupDrop.Size = new System.Drawing.Size(218, 28);
this.backupDrop.TabIndex = 2;
this.backupDrop.Text = "> BACKUP";
this.backupDrop.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -649,10 +656,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, 68);
this.sideloadContainer.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.sideloadContainer.Location = new System.Drawing.Point(0, 56);
this.sideloadContainer.Margin = new System.Windows.Forms.Padding(2);
this.sideloadContainer.Name = "sideloadContainer";
this.sideloadContainer.Size = new System.Drawing.Size(291, 282);
this.sideloadContainer.Size = new System.Drawing.Size(218, 229);
this.sideloadContainer.TabIndex = 74;
//
// UpdateGamesButton
@@ -666,11 +673,10 @@
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, 238);
this.UpdateGamesButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.UpdateGamesButton.Location = new System.Drawing.Point(0, 196);
this.UpdateGamesButton.Name = "UpdateGamesButton";
this.UpdateGamesButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.UpdateGamesButton.Size = new System.Drawing.Size(291, 34);
this.UpdateGamesButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.UpdateGamesButton.Size = new System.Drawing.Size(218, 28);
this.UpdateGamesButton.TabIndex = 7;
this.UpdateGamesButton.Text = "Refresh Update List";
this.UpdateGamesButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -688,11 +694,10 @@
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, 204);
this.listApkButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.listApkButton.Location = new System.Drawing.Point(0, 168);
this.listApkButton.Name = "listApkButton";
this.listApkButton.Padding = new System.Windows.Forms.Padding(31, 0, 0, 0);
this.listApkButton.Size = new System.Drawing.Size(291, 34);
this.listApkButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
this.listApkButton.Size = new System.Drawing.Size(218, 28);
this.listApkButton.TabIndex = 6;
this.listApkButton.Text = "Refresh All";
this.listApkButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -711,11 +716,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, 34);
this.sideloadDrop.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.sideloadDrop.Location = new System.Drawing.Point(0, 28);
this.sideloadDrop.Margin = new System.Windows.Forms.Padding(2);
this.sideloadDrop.Name = "sideloadDrop";
this.sideloadDrop.Padding = new System.Windows.Forms.Padding(9, 0, 0, 0);
this.sideloadDrop.Size = new System.Drawing.Size(291, 34);
this.sideloadDrop.Padding = new System.Windows.Forms.Padding(7, 0, 0, 0);
this.sideloadDrop.Size = new System.Drawing.Size(218, 28);
this.sideloadDrop.TabIndex = 1;
this.sideloadDrop.Text = "> SIDELOAD";
this.sideloadDrop.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -729,9 +734,10 @@
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(4, 767);
this.diskLabel.Location = new System.Drawing.Point(7, 622);
this.diskLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.diskLabel.Name = "diskLabel";
this.diskLabel.Size = new System.Drawing.Size(113, 25);
this.diskLabel.Size = new System.Drawing.Size(74, 17);
this.diskLabel.TabIndex = 7;
this.diskLabel.Text = "Disk Label";
//
@@ -742,9 +748,10 @@
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(0, 838);
this.speedLabel.Location = new System.Drawing.Point(7, 680);
this.speedLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.speedLabel.Name = "speedLabel";
this.speedLabel.Size = new System.Drawing.Size(220, 25);
this.speedLabel.Size = new System.Drawing.Size(141, 17);
this.speedLabel.TabIndex = 76;
this.speedLabel.Text = "DLS: Speed in MBPS";
//
@@ -755,9 +762,10 @@
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(0, 859);
this.etaLabel.Location = new System.Drawing.Point(7, 699);
this.etaLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.etaLabel.Name = "etaLabel";
this.etaLabel.Size = new System.Drawing.Size(220, 25);
this.etaLabel.Size = new System.Drawing.Size(139, 17);
this.etaLabel.TabIndex = 75;
this.etaLabel.Text = "ETA: HH:MM:SS Left";
//
@@ -770,10 +778,9 @@
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(369, 682);
this.freeDisclaimer.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.freeDisclaimer.Location = new System.Drawing.Point(277, 554);
this.freeDisclaimer.Name = "freeDisclaimer";
this.freeDisclaimer.Size = new System.Drawing.Size(294, 50);
this.freeDisclaimer.Size = new System.Drawing.Size(246, 40);
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;
@@ -781,6 +788,7 @@
//
// gamesQueListBox
//
this.gamesQueListBox.AllowDrop = true;
this.gamesQueListBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.gamesQueListBox.BackColor = global::AndroidSideloader.Properties.Settings.Default.BackColor;
@@ -791,17 +799,16 @@
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 = 25;
this.gamesQueListBox.Location = new System.Drawing.Point(801, 585);
this.gamesQueListBox.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.gamesQueListBox.ItemHeight = 16;
this.gamesQueListBox.Location = new System.Drawing.Point(601, 475);
this.gamesQueListBox.Margin = new System.Windows.Forms.Padding(2);
this.gamesQueListBox.Name = "gamesQueListBox";
this.gamesQueListBox.Size = new System.Drawing.Size(495, 152);
this.gamesQueListBox.Size = new System.Drawing.Size(369, 162);
this.gamesQueListBox.TabIndex = 9;
this.gamesQueListBox.MouseClick += new System.Windows.Forms.MouseEventHandler(this.gamesQueListBox_MouseClick);
//
// devicesComboBox
//
this.devicesComboBox.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.devicesComboBox.BackColor = global::AndroidSideloader.Properties.Settings.Default.ComboBoxColor;
this.devicesComboBox.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "ComboBoxColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.devicesComboBox.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
@@ -810,17 +817,16 @@
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(303, 48);
this.devicesComboBox.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.devicesComboBox.Location = new System.Drawing.Point(227, 39);
this.devicesComboBox.Margin = new System.Windows.Forms.Padding(2);
this.devicesComboBox.Name = "devicesComboBox";
this.devicesComboBox.Size = new System.Drawing.Size(213, 33);
this.devicesComboBox.Size = new System.Drawing.Size(161, 24);
this.devicesComboBox.TabIndex = 1;
this.devicesComboBox.Text = "Select your device";
this.devicesComboBox.SelectedIndexChanged += new System.EventHandler(this.devicesComboBox_SelectedIndexChanged);
//
// remotesList
//
this.remotesList.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.remotesList.BackColor = global::AndroidSideloader.Properties.Settings.Default.ComboBoxColor;
this.remotesList.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "ComboBoxColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.remotesList.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
@@ -829,10 +835,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(703, 48);
this.remotesList.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.remotesList.Location = new System.Drawing.Point(527, 39);
this.remotesList.Margin = new System.Windows.Forms.Padding(2);
this.remotesList.Name = "remotesList";
this.remotesList.Size = new System.Drawing.Size(69, 33);
this.remotesList.Size = new System.Drawing.Size(53, 24);
this.remotesList.TabIndex = 3;
this.remotesList.SelectedIndexChanged += new System.EventHandler(this.remotesList_SelectedIndexChanged);
//
@@ -846,10 +852,9 @@
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(304, 84);
this.gamesListView.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.gamesListView.Location = new System.Drawing.Point(224, 72);
this.gamesListView.Name = "gamesListView";
this.gamesListView.Size = new System.Drawing.Size(992, 450);
this.gamesListView.Size = new System.Drawing.Size(746, 359);
this.gamesListView.TabIndex = 6;
this.gamesListView.UseCompatibleStateImageBehavior = false;
this.gamesListView.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listView1_ColumnClick);
@@ -869,15 +874,15 @@
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(645, 308);
this.searchTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.searchTextBox.Location = new System.Drawing.Point(484, 250);
this.searchTextBox.MaximumSize = new System.Drawing.Size(231, 26);
this.searchTextBox.MinimumSize = new System.Drawing.Size(231, 26);
this.searchTextBox.Name = "searchTextBox";
this.searchTextBox.Size = new System.Drawing.Size(307, 30);
this.searchTextBox.Size = new System.Drawing.Size(231, 23);
this.searchTextBox.TabIndex = 5;
this.searchTextBox.Text = "Search";
this.searchTextBox.Visible = false;
this.searchTextBox.TextChanged += new System.EventHandler(this.searchTextBox_TextChanged);
this.searchTextBox.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.searchTextBox_KeyPress);
this.searchTextBox.Leave += new System.EventHandler(this.searchTextBox_Leave);
//
// gamesQueueLabel
@@ -888,16 +893,14 @@
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(796, 731);
this.gamesQueueLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.gamesQueueLabel.Location = new System.Drawing.Point(597, 601);
this.gamesQueueLabel.Name = "gamesQueueLabel";
this.gamesQueueLabel.Size = new System.Drawing.Size(151, 25);
this.gamesQueueLabel.Size = new System.Drawing.Size(51, 17);
this.gamesQueueLabel.TabIndex = 86;
this.gamesQueueLabel.Text = "Games Queue";
this.gamesQueueLabel.Text = "Queue";
//
// MountButton
//
this.MountButton.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.MountButton.BackColor = global::AndroidSideloader.Properties.Settings.Default.SubButtonColor;
this.MountButton.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
this.MountButton.Cursor = System.Windows.Forms.Cursors.Default;
@@ -907,10 +910,9 @@
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(524, 48);
this.MountButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.MountButton.Location = new System.Drawing.Point(393, 39);
this.MountButton.Name = "MountButton";
this.MountButton.Size = new System.Drawing.Size(88, 32);
this.MountButton.Size = new System.Drawing.Size(66, 26);
this.MountButton.TabIndex = 2;
this.MountButton.Text = "Mount";
this.MountButton.UseVisualStyleBackColor = false;
@@ -924,10 +926,9 @@
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(300, 852);
this.ProgressText.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.ProgressText.Location = new System.Drawing.Point(225, 692);
this.ProgressText.Name = "ProgressText";
this.ProgressText.Size = new System.Drawing.Size(0, 24);
this.ProgressText.Size = new System.Drawing.Size(0, 18);
this.ProgressText.TabIndex = 88;
//
// notesRichTextBox
@@ -940,13 +941,12 @@
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(801, 751);
this.notesRichTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.notesRichTextBox.Location = new System.Drawing.Point(601, 622);
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(493, 96);
this.notesRichTextBox.Size = new System.Drawing.Size(369, 67);
this.notesRichTextBox.TabIndex = 10;
this.notesRichTextBox.Text = "";
//
@@ -957,10 +957,9 @@
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(803, 626);
this.DragDropLbl.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.DragDropLbl.Location = new System.Drawing.Point(602, 509);
this.DragDropLbl.Name = "DragDropLbl";
this.DragDropLbl.Size = new System.Drawing.Size(394, 69);
this.DragDropLbl.Size = new System.Drawing.Size(320, 55);
this.DragDropLbl.TabIndex = 25;
this.DragDropLbl.Text = "DragDropLBL";
this.DragDropLbl.Visible = false;
@@ -973,12 +972,11 @@
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(797, 833);
this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label1.Location = new System.Drawing.Point(597, 674);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(131, 25);
this.label1.Size = new System.Drawing.Size(45, 17);
this.label1.TabIndex = 86;
this.label1.Text = "Install Notes";
this.label1.Text = "Notes";
//
// pictureBox1
//
@@ -990,10 +988,9 @@
this.pictureBox1.ErrorImage = null;
this.pictureBox1.ImageLocation = global::AndroidSideloader.Properties.Settings.Default.BackPicturePath;
this.pictureBox1.InitialImage = null;
this.pictureBox1.Location = new System.Drawing.Point(289, -2);
this.pictureBox1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.pictureBox1.Location = new System.Drawing.Point(217, -2);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(1019, 884);
this.pictureBox1.Size = new System.Drawing.Size(764, 718);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.pictureBox1.TabIndex = 74;
this.pictureBox1.TabStop = false;
@@ -1002,10 +999,9 @@
// label2
//
this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
this.label2.Location = new System.Drawing.Point(620, 241);
this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label2.Location = new System.Drawing.Point(465, 196);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(361, 148);
this.label2.Size = new System.Drawing.Size(271, 120);
this.label2.TabIndex = 89;
this.label2.Visible = false;
//
@@ -1017,10 +1013,9 @@
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(688, 257);
this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label3.Location = new System.Drawing.Point(516, 209);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(196, 60);
this.label3.Size = new System.Drawing.Size(170, 51);
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;
@@ -1034,10 +1029,9 @@
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(709, 350);
this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label4.Location = new System.Drawing.Point(532, 284);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(156, 20);
this.label4.Size = new System.Drawing.Size(132, 17);
this.label4.TabIndex = 90;
this.label4.Text = "Shorcut: CTRL+F";
this.label4.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@@ -1045,101 +1039,50 @@
//
// label5
//
this.label5.Anchor = System.Windows.Forms.AnchorStyles.Top;
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(923, 14);
this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label5.Location = new System.Drawing.Point(692, 11);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(114, 20);
this.label5.Size = new System.Drawing.Size(99, 17);
this.label5.TabIndex = 90;
this.label5.Text = "Search apps";
this.label5.TextAlign = System.Drawing.ContentAlignment.TopCenter;
//
// pictureBox3
//
this.pictureBox3.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.pictureBox3.Image = global::AndroidSideloader.Properties.Resources.orangekey;
this.pictureBox3.Location = new System.Drawing.Point(1071, 12);
this.pictureBox3.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.pictureBox3.Name = "pictureBox3";
this.pictureBox3.Size = new System.Drawing.Size(28, 25);
this.pictureBox3.TabIndex = 92;
this.pictureBox3.TabStop = false;
//
// pictureBox2
//
this.pictureBox2.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.pictureBox2.Image = global::AndroidSideloader.Properties.Resources.SearchGlass;
this.pictureBox2.Location = new System.Drawing.Point(975, 46);
this.pictureBox2.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.pictureBox2.Name = "pictureBox2";
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);
//
// gamesPictureBox
//
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(303, 581);
this.gamesPictureBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.gamesPictureBox.Name = "gamesPictureBox";
this.gamesPictureBox.Size = new System.Drawing.Size(489, 263);
this.gamesPictureBox.TabIndex = 84;
this.gamesPictureBox.TabStop = false;
//
// pictureBox4
//
this.pictureBox4.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.pictureBox4.Image = global::AndroidSideloader.Properties.Resources.greenkey;
this.pictureBox4.Location = new System.Drawing.Point(1071, 48);
this.pictureBox4.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.pictureBox4.Name = "pictureBox4";
this.pictureBox4.Size = new System.Drawing.Size(28, 25);
this.pictureBox4.TabIndex = 92;
this.pictureBox4.TabStop = false;
//
// label6
//
this.label6.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.label6.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
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(1104, 15);
this.label6.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label6.Location = new System.Drawing.Point(828, 12);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(167, 20);
this.label6.Size = new System.Drawing.Size(145, 17);
this.label6.TabIndex = 90;
this.label6.Text = "= Update Available";
this.label6.TextAlign = System.Drawing.ContentAlignment.TopCenter;
//
// label7
//
this.label7.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.label7.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
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(1104, 50);
this.label7.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label7.Location = new System.Drawing.Point(828, 41);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(113, 20);
this.label7.Size = new System.Drawing.Size(98, 17);
this.label7.TabIndex = 90;
this.label7.Text = "= Up to date";
this.label7.TextAlign = System.Drawing.ContentAlignment.TopCenter;
//
// label8
//
this.label8.Anchor = System.Windows.Forms.AnchorStyles.Top;
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(612, 52);
this.label8.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label8.Location = new System.Drawing.Point(459, 42);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(76, 20);
this.label8.Size = new System.Drawing.Size(65, 17);
this.label8.TabIndex = 90;
this.label8.Text = "Mirror #";
this.label8.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@@ -1151,10 +1094,9 @@
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(791, 9);
this.EnterInstallBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.EnterInstallBox.Location = new System.Drawing.Point(593, 7);
this.EnterInstallBox.Name = "EnterInstallBox";
this.EnterInstallBox.Size = new System.Drawing.Size(119, 71);
this.EnterInstallBox.Size = new System.Drawing.Size(78, 52);
this.EnterInstallBox.TabIndex = 93;
this.EnterInstallBox.Text = " Install w/ \r\n Enter Key";
this.EnterInstallBox.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -1173,10 +1115,11 @@
this.ADBcommandbox.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.ADBcommandbox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.ADBcommandbox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.ADBcommandbox.Location = new System.Drawing.Point(645, 309);
this.ADBcommandbox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.ADBcommandbox.Location = new System.Drawing.Point(485, 250);
this.ADBcommandbox.MaximumSize = new System.Drawing.Size(231, 26);
this.ADBcommandbox.MinimumSize = new System.Drawing.Size(231, 26);
this.ADBcommandbox.Name = "ADBcommandbox";
this.ADBcommandbox.Size = new System.Drawing.Size(307, 30);
this.ADBcommandbox.Size = new System.Drawing.Size(231, 23);
this.ADBcommandbox.TabIndex = 5;
this.ADBcommandbox.Visible = false;
this.ADBcommandbox.TextChanged += new System.EventHandler(this.searchTextBox_TextChanged);
@@ -1192,10 +1135,9 @@
this.label11.AutoSize = true;
this.label11.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold);
this.label11.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.label11.Location = new System.Drawing.Point(704, 351);
this.label11.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label11.Location = new System.Drawing.Point(528, 285);
this.label11.Name = "label11";
this.label11.Size = new System.Drawing.Size(169, 20);
this.label11.Size = new System.Drawing.Size(143, 17);
this.label11.TabIndex = 90;
this.label11.Text = "Shorcut = CTRL+R";
this.label11.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@@ -1209,22 +1151,61 @@
this.label9.AutoSize = true;
this.label9.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold);
this.label9.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.label9.Location = new System.Drawing.Point(685, 254);
this.label9.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label9.Location = new System.Drawing.Point(514, 206);
this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(207, 80);
this.label9.Size = new System.Drawing.Size(173, 68);
this.label9.TabIndex = 90;
this.label9.Text = "Type command without \r\n\"adb\" prefix.\r\n\r\n\r\n";
this.label9.Text = "Type command without\r\n\"adb\" prefix.\r\n\r\n\r\n";
this.label9.TextAlign = System.Drawing.ContentAlignment.TopCenter;
this.label9.Visible = false;
//
// pictureBox4
//
this.pictureBox4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pictureBox4.Image = global::AndroidSideloader.Properties.Resources.greenkey;
this.pictureBox4.Location = new System.Drawing.Point(803, 39);
this.pictureBox4.Name = "pictureBox4";
this.pictureBox4.Size = new System.Drawing.Size(21, 20);
this.pictureBox4.TabIndex = 92;
this.pictureBox4.TabStop = false;
//
// pictureBox3
//
this.pictureBox3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pictureBox3.Image = global::AndroidSideloader.Properties.Resources.orangekey;
this.pictureBox3.Location = new System.Drawing.Point(803, 10);
this.pictureBox3.Name = "pictureBox3";
this.pictureBox3.Size = new System.Drawing.Size(21, 20);
this.pictureBox3.TabIndex = 92;
this.pictureBox3.TabStop = false;
//
// pictureBox2
//
this.pictureBox2.Image = global::AndroidSideloader.Properties.Resources.SearchGlass;
this.pictureBox2.Location = new System.Drawing.Point(731, 37);
this.pictureBox2.Name = "pictureBox2";
this.pictureBox2.Size = new System.Drawing.Size(28, 24);
this.pictureBox2.TabIndex = 91;
this.pictureBox2.TabStop = false;
this.pictureBox2.Click += new System.EventHandler(this.pictureBox2_Click);
//
// gamesPictureBox
//
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(224, 474);
this.gamesPictureBox.Name = "gamesPictureBox";
this.gamesPictureBox.Size = new System.Drawing.Size(371, 214);
this.gamesPictureBox.TabIndex = 84;
this.gamesPictureBox.TabStop = false;
//
// MainForm
//
this.AllowDrop = true;
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = global::AndroidSideloader.Properties.Settings.Default.BackColor;
this.ClientSize = new System.Drawing.Size(1307, 887);
this.ClientSize = new System.Drawing.Size(980, 721);
this.Controls.Add(this.EnterInstallBox);
this.Controls.Add(this.ProgressText);
this.Controls.Add(this.pictureBox4);
@@ -1258,7 +1239,6 @@
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, 4, 4, 4);
this.MaximizeBox = false;
this.Name = "MainForm";
this.ShowIcon = false;
@@ -1272,14 +1252,15 @@
this.DragLeave += new System.EventHandler(this.Form1_DragLeave);
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox5)).EndInit();
this.otherContainer.ResumeLayout(false);
this.backupContainer.ResumeLayout(false);
this.sideloadContainer.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox4)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gamesPictureBox)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox4)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
@@ -1347,6 +1328,8 @@
private System.Windows.Forms.TextBox ADBcommandbox;
private System.Windows.Forms.Label label11;
private System.Windows.Forms.Label label9;
private System.Windows.Forms.Label BatteryLbl;
private System.Windows.Forms.PictureBox pictureBox5;
}
}

View File

@@ -40,23 +40,36 @@ namespace AndroidSideloader
{
InitializeComponent();
if (!File.Exists(Properties.Settings.Default.CurrentLogTitle))
{
Random r = new Random();
int x = r.Next(6806);
int y = r.Next(6806);
if (File.Exists($"{Properties.Settings.Default.MainDir}\\notes\\nouns.txt"))
{
string[] lines = File.ReadAllLines($"{Properties.Settings.Default.MainDir}\\notes\\nouns.txt");
if (!File.Exists($"{Properties.Settings.Default.MainDir}\\notes\\nouns.txt"))
File.WriteAllText("NOUNS.TXT MISSING", $"{ Properties.Settings.Default.MainDir}\\notes\\nouns.txt");
if (String.IsNullOrEmpty(Properties.Settings.Default.CurrentLogPath))
{
if (File.Exists($"{Environment.CurrentDirectory}\\nouns\\nouns.txt"))
{
string[] lines = File.ReadAllLines($"{Environment.CurrentDirectory}\\nouns\\nouns.txt");
Random r = new Random();
int x = r.Next(6806);
int y = r.Next(6806);
string randomnoun = lines[new Random(x).Next(lines.Length)];
string randomnoun2 = lines[new Random(y).Next(lines.Length)];
Properties.Settings.Default.CurrentLogTitle = Properties.Settings.Default.MainDir + "\\" + randomnoun + "-" + randomnoun2 + ".txt";
string combined = randomnoun + "-" + randomnoun2;
Properties.Settings.Default.CurrentLogPath = Environment.CurrentDirectory + "\\" + combined + ".txt";
Properties.Settings.Default.CurrentLogName = combined;
Properties.Settings.Default.Save();
if (File.Exists($"{Environment.CurrentDirectory}\\debuglog.txt"))
System.IO.File.Move("debuglog.txt", combined + ".txt");
Properties.Settings.Default.Save();
}
else
{
FlexibleMessageBox.Show("Cannot generate debug log until RSL is done syncing with the server. Once RSL has fully loaded please reset your DebugLog in Settings.");
Properties.Settings.Default.CurrentLogPath = $"{Environment.CurrentDirectory}\\debuglog.txt";
}
}
System.Windows.Forms.Timer t = new System.Windows.Forms.Timer();
t.Interval = 840000; // 14 mins between wakeup commands
t.Tick += new EventHandler(timer_Tick);
@@ -73,7 +86,14 @@ namespace AndroidSideloader
this.gamesListView.ListViewItemSorter = lvwColumnSorter;
if (searchTextBox.Visible)
searchTextBox.Focus();
if (Properties.Settings.Default.QblindOn)
pictureBox3.Image = global::AndroidSideloader.Properties.Resources.redkey;
else
pictureBox3.Image = global::AndroidSideloader.Properties.Resources.orangekey;
if (Properties.Settings.Default.QblindOn)
pictureBox4.Image = global::AndroidSideloader.Properties.Resources.bluekey;
else
pictureBox4.Image = global::AndroidSideloader.Properties.Resources.greenkey;
}
@@ -115,14 +135,7 @@ namespace AndroidSideloader
ADB.RunAdbCommandToString("kill-server");
Properties.Settings.Default.ADBPath = adbFile;
Properties.Settings.Default.Save();
if (File.Exists(Sideloader.CrashLogPath))
{
DialogResult dialogResult = FlexibleMessageBox.Show(this, $"Sideloader crashed during your last use.\nPlease report issue @ https://github.com/nerdunit/androidsideloader/issues + send the crashlog to a mod or dev.\n\n(Crashlog.txt is located here: {Path.GetFullPath(Sideloader.CrashLogPath)})\n\nIf you've already sent it press YES to delete it and prevent this message. Press NO if you'd still like to send it.", "Crash Detected", MessageBoxButtons.YesNo);
if (dialogResult == DialogResult.Yes)
File.Delete(Sideloader.CrashLogPath);
else
Process.Start("explorer.exe", Properties.Settings.Default.MainDir);
}
CheckForInternet();
if (HasInternet == true)
@@ -135,24 +148,18 @@ namespace AndroidSideloader
Directory.CreateDirectory(BackupFolder);
if (Directory.Exists(Sideloader.TempFolder))
{
Directory.Delete(Sideloader.TempFolder, true);
Directory.CreateDirectory(Sideloader.TempFolder);
}
//Delete the Debug file if it is more than 5MB
if (File.Exists($"{Properties.Settings.Default.MainDir}\\{Properties.Settings.Default.CurrentLogTitle}"))
if (File.Exists($"{Properties.Settings.Default.CurrentLogPath}"))
{
long length = new System.IO.FileInfo($"{Properties.Settings.Default.MainDir}\\{ Properties.Settings.Default.CurrentLogTitle}").Length;
if (length > 5000000)
{
string[] lines = File.ReadAllLines($"{Properties.Settings.Default.MainDir}\\notes2\\nouns.txt");
string randomnoun = lines[new Random().Next(lines.Length)];
string randomnoun2 = lines[new Random().Next(lines.Length)];
Properties.Settings.Default.CurrentLogTitle = randomnoun + "-" + randomnoun2;
Properties.Settings.Default.Save();
}
File.Delete($"{Properties.Settings.Default.MainDir}\\{ Properties.Settings.Default.CurrentLogTitle}");
long length = new System.IO.FileInfo(Properties.Settings.Default.CurrentLogPath).Length;
if (length > 5000000)
File.Delete($"{Properties.Settings.Default.CurrentLogPath}");
}
RCLONE.Init();
@@ -181,6 +188,40 @@ namespace AndroidSideloader
}
catch { }
if (File.Exists("crashlog.txt"))
{
DialogResult dialogResult = FlexibleMessageBox.Show($"Sideloader crashed during your last use.\nPress OK if you'd like to send us your crash log.\n\n NOTE: THIS CAN TAKE UP TO 30 SECONDS.", "Crash Detected", MessageBoxButtons.OKCancel);
if (dialogResult == DialogResult.OK)
{
if (File.Exists($"{Environment.CurrentDirectory}\\crashlog.txt") && File.Exists($"{Environment.CurrentDirectory}\\nouns\\nouns.txt"))
{
Random r = new Random();
int x = r.Next(6806);
int y = r.Next(6806);
string[] lines = File.ReadAllLines($"{Environment.CurrentDirectory}\\nouns\\nouns.txt");
string randomnoun = lines[new Random(x).Next(lines.Length)];
string randomnoun2 = lines[new Random(y).Next(lines.Length)];
string combined = randomnoun + "-" + randomnoun2;
System.IO.File.Move("crashlog.txt", $"{Environment.CurrentDirectory}\\{combined}.txt");
Properties.Settings.Default.CurrentCrashPath = $"{Environment.CurrentDirectory}\\{combined}.txt";
Properties.Settings.Default.CurrentCrashName = combined;
Properties.Settings.Default.Save();
Clipboard.SetText(combined);
RCLONE.runRcloneCommand($"copy \"{Properties.Settings.Default.CurrentCrashPath}\" RSL-debuglogs:CrashLogs");
FlexibleMessageBox.Show($"Your CrashLog has been copied to the server. Please mention your CrashLogID ({Properties.Settings.Default.CurrentCrashName}) to the Mods (it has been automatically copied to your clipboard).");
Clipboard.SetText(Properties.Settings.Default.CurrentCrashName);
}
}
else
{
File.Delete($"{Environment.CurrentDirectory}\\crashlog.txt");
}
}
}
@@ -205,10 +246,12 @@ namespace AndroidSideloader
ChangeTitle("Initializing Mirrors");
initMirrors(true);
ChangeTitle("Initializing Games");
if (!Directory.Exists(SideloaderRCLONE.Nouns))
SideloaderRCLONE.UpdateNouns(currentRemote);
SideloaderRCLONE.initGames(currentRemote);
if (!Directory.Exists(SideloaderRCLONE.ThumbnailsFolder) || !Directory.Exists(SideloaderRCLONE.NotesFolder))
{
MessageBox.Show("It seems you are missing the thumbnails and/or notes database, the first start of the sideloader takes a bit more time, so dont worry if it looks stuck!");
FlexibleMessageBox.Show("It seems you are missing the thumbnails and/or notes database, the first start of the sideloader takes a bit more time, so dont worry if it looks stuck!");
}
ChangeTitle("Syncing Game Photos");
SideloaderRCLONE.UpdateGamePhotos(currentRemote);
@@ -234,6 +277,9 @@ namespace AndroidSideloader
progressBar.Style = ProgressBarStyle.Continuous;
isLoading = false;
}
@@ -383,11 +429,11 @@ namespace AndroidSideloader
Devices.Clear();
string output = string.Empty;
string error = string.Empty;
string battery = string.Empty;
ADB.DeviceID = GetDeviceID();
Thread t1 = new Thread(() =>
{
output = ADB.RunAdbCommandToString("devices").Output;
output = ADB.RunAdbCommandToString("devices").Output;
});
@@ -415,10 +461,17 @@ namespace AndroidSideloader
i++;
}
battery = ADB.RunAdbCommandToString("shell dumpsys battery").Output;
battery = Utilities.StringUtilities.RemoveEverythingBeforeFirst(battery, "level:");
battery = Utilities.StringUtilities.RemoveEverythingAfterFirst(battery, "\n");
battery = Utilities.StringUtilities.KeepOnlyNumbers(battery);
BatteryLbl.Text = BatteryLbl.Text.Replace("N/A", battery);
if (devicesComboBox.Items.Count > 0)
devicesComboBox.SelectedIndex = 0;
return devicesComboBox.SelectedIndex;
}
@@ -487,7 +540,7 @@ namespace AndroidSideloader
this.Invoke(() =>
{
this.Text = "Device Not Authorized";
DialogResult dialogResult = MessageBox.Show("Device not authorized, be sure to authorize computer on device.", "Not Authorized", MessageBoxButtons.RetryCancel);
DialogResult dialogResult = FlexibleMessageBox.Show("Device not authorized, be sure to authorize computer on device.", "Not Authorized", MessageBoxButtons.RetryCancel);
if (dialogResult == DialogResult.Retry)
{
devicesbutton.PerformClick();
@@ -510,7 +563,7 @@ namespace AndroidSideloader
{
DeviceConnected = false;
this.Text = "No Device Connected";
DialogResult dialogResult = MessageBox.Show("No device found. Please ensure the following: \n\n -Developer mode is enabled. \n -ADB drivers are installed. \n -ADB connection is enabled on your device (this can reset). \n -Your device is plugged in.\n\nThen press \"Retry\"", "No device found.", MessageBoxButtons.RetryCancel);
DialogResult dialogResult = FlexibleMessageBox.Show("No device found. Please ensure the following: \n\n -Developer mode is enabled. \n -ADB drivers are installed. \n -ADB connection is enabled on your device (this can reset). \n -Your device is plugged in.\n\nThen press \"Retry\"", "No device found.", MessageBoxButtons.RetryCancel);
if (dialogResult == DialogResult.Retry)
{
devicesbutton.PerformClick();
@@ -585,7 +638,7 @@ namespace AndroidSideloader
string date_str = DateTime.Today.ToString("yyyy.MM.dd");
string CurrBackups = Path.Combine(BackupFolder, date_str);
MessageBox.Show($"This may take up to a minute. Backing up gamesaves to Documents\\Rookie Backups\\{date_str} (year.month.date)");
FlexibleMessageBox.Show($"This may take up to a minute. Backing up gamesaves to Documents\\Rookie Backups\\{date_str} (year.month.date)");
Directory.CreateDirectory(CurrBackups);
output = ADB.RunAdbCommandToString($"pull \"/sdcard/Android/data\" \"{CurrBackups}\"");
@@ -727,11 +780,11 @@ namespace AndroidSideloader
string GameName = m_combo.SelectedItem.ToString();
string packagename = Sideloader.gameNameToPackageName(GameName);
MessageBox.Show($"If savedata is found it will be saved to Documents\\Rookie Backups\\{date_str}(YYYY.MM.DD)\\{packagename}", "Attempting Backup...", MessageBoxButtons.OK);
FlexibleMessageBox.Show($"If savedata is found it will be saved to Documents\\Rookie Backups\\{date_str}(YYYY.MM.DD)\\{packagename}", "Attempting Backup...", MessageBoxButtons.OK);
Directory.CreateDirectory(CurrBackups);
ADB.RunAdbCommandToString($"pull \"/sdcard/Android/data/{packagename}\" \"{CurrBackups}\"");
DialogResult dialogResult = MessageBox.Show($"Please check to see if we automatically found savedata in Documents\\Rookie Backups.\nIf there are no new files there is recommended that you do a full backup via Backup Gamedata before continuing.\nNOTE: Some games do not allow backup of savedata.\nContinue with the uninstall?", "Check for backup.", MessageBoxButtons.OKCancel);
DialogResult dialogResult = FlexibleMessageBox.Show($"Please check to see if we automatically found savedata in Documents\\Rookie Backups.\nIf there are no new files there is recommended that you do a full backup via Backup Gamedata before continuing.\nNOTE: Some games do not allow backup of savedata.\nContinue with the uninstall?", "Check for backup.", MessageBoxButtons.OKCancel);
if (dialogResult == DialogResult.Cancel)
{
return;
@@ -842,7 +895,7 @@ namespace AndroidSideloader
{
DialogResult dialogResult = MessageBox.Show("Special instructions have been found with this file, would you like to run them automatically?", "Special Instructions found!", MessageBoxButtons.OKCancel);
DialogResult dialogResult = FlexibleMessageBox.Show("Special instructions have been found with this file, would you like to run them automatically?", "Special Instructions found!", MessageBoxButtons.OKCancel);
if (dialogResult == DialogResult.Cancel)
return;
else
@@ -883,7 +936,7 @@ namespace AndroidSideloader
{
if (File.Exists($"{dir}\\Install.txt"))
{
DialogResult dialogResult = MessageBox.Show("Special instructions have been found with this file, would you like to run them automatically?", "Special Instructions found!", MessageBoxButtons.OKCancel);
DialogResult dialogResult = FlexibleMessageBox.Show("Special instructions have been found with this file, would you like to run them automatically?", "Special Instructions found!", MessageBoxButtons.OKCancel);
if (dialogResult == DialogResult.Cancel)
return;
else
@@ -984,6 +1037,9 @@ namespace AndroidSideloader
{
if (string.Equals(release[SideloaderRCLONE.PackageNameIndex], packagename))
{
if (Properties.Settings.Default.QblindOn)
Game.BackColor = Color.FromArgb(0, 112, 138);
else
Game.BackColor = Color.Green;
string InstalledVersionCode;
if (Sideloader.InstalledPackages.ContainsKey(packagename) && Sideloader.InstalledPackages[packagename] != "")
@@ -1007,6 +1063,9 @@ namespace AndroidSideloader
//Logger.Log($"Checked game {release[SideloaderRCLONE.GameNameIndex]}; cloudversion={cloudVersionInt} localversion={installedVersionInt}");
if (installedVersionInt < cloudVersionInt)
{
if (Properties.Settings.Default.QblindOn)
Game.BackColor = Color.FromArgb(120, 0, 0);
else
Game.BackColor = Color.FromArgb(102, 77, 0);
}
}
@@ -1101,7 +1160,7 @@ without him none of this would be possible
- Thanks to Serge Weinstock for developing SergeUtils, which is used to search the combo box
- Thanks to Mike Gold https://www.c-sharpcorner.com/members/mike-gold2 for the scrollable message box
- HFP Thanks to: Roma/Rookie, Pmow, Flow, Kaladin, and the mod staff!";
- HFP Thanks to: Roma/Rookie, Pmow, Flow, Sam Hoque, Kaladin, and the mod staff!";
FlexibleMessageBox.Show(about);
}
@@ -1110,14 +1169,14 @@ without him none of this would be possible
{
ADB.WakeDevice();
DialogResult dialogResult = MessageBox.Show("Make sure your Quest is plugged in VIA USB then press OK, if you need a moment press Cancel and come back when you're ready.", "Connect Quest now.", MessageBoxButtons.OKCancel);
DialogResult dialogResult = FlexibleMessageBox.Show("Make sure your Quest is plugged in VIA USB then press OK, if you need a moment press Cancel and come back when you're ready.", "Connect Quest now.", MessageBoxButtons.OKCancel);
if (dialogResult == DialogResult.Cancel)
return;
ADB.RunAdbCommandToString("devices");
ADB.RunAdbCommandToString("tcpip 5555");
MessageBox.Show("Press OK to get your Quest's local IP address.", "Obtain local IP address", MessageBoxButtons.OKCancel);
FlexibleMessageBox.Show("Press OK to get your Quest's local IP address.", "Obtain local IP address", MessageBoxButtons.OKCancel);
Thread.Sleep(1000);
string input = ADB.RunAdbCommandToString("shell ip route").Output;
@@ -1129,7 +1188,7 @@ without him none of this would be possible
{
string IPaddr = strArrayOne[8];
string IPcmnd = "connect " + IPaddr + ":5555";
MessageBox.Show($"Your Quest's local IP address is: {IPaddr}\n\nPlease disconnect your Quest then wait 2 seconds.\nOnce it is disconnected hit OK", "", MessageBoxButtons.OK);
FlexibleMessageBox.Show($"Your Quest's local IP address is: {IPaddr}\n\nPlease disconnect your Quest then wait 2 seconds.\nOnce it is disconnected hit OK", "", MessageBoxButtons.OK);
Thread.Sleep(2000);
ADB.RunAdbCommandToString(IPcmnd);
await Program.form.CheckForDevice();
@@ -1138,7 +1197,7 @@ without him none of this would be possible
Properties.Settings.Default.IPAddress = IPcmnd;
Properties.Settings.Default.Save();
MessageBox.Show($"Connected! We can now automatically disable the Quest wifi chip from falling asleep. This makes it so Rookie can work wirelessly even if the device has entered \"sleep mode\". This setting is NOT permanent and resets upon Quest reboot, just like wireless ADB functionality.\n\nNOTE: This may cause the device battery to drain while it is in sleep mode at a very slightly increased rate. We recommend this setting for the majority of users for ease of use purposes. If you click NO you must keep your Quest connected to a charger or wake your device and then put it back on hold before using Rookie wirelessly. Do you want us to stop sleep mode from disabling wireless ADB?", "", MessageBoxButtons.YesNo);
FlexibleMessageBox.Show($"Connected! We can now automatically disable the Quest wifi chip from falling asleep. This makes it so Rookie can work wirelessly even if the device has entered \"sleep mode\". This setting is NOT permanent and resets upon Quest reboot, just like wireless ADB functionality.\n\nNOTE: This may cause the device battery to drain while it is in sleep mode at a very slightly increased rate. We recommend this setting for the majority of users for ease of use purposes. If you click NO you must keep your Quest connected to a charger or wake your device and then put it back on hold before using Rookie wirelessly. Do you want us to stop sleep mode from disabling wireless ADB?", "", MessageBoxButtons.YesNo);
if (dialogResult == DialogResult.Yes)
{
ADB.RunAdbCommandToString("shell settings put global wifi_wakeup_available 1");
@@ -1149,7 +1208,7 @@ without him none of this would be possible
ADB.RunAdbCommandToString("shell settings put global wifi_wakeup_enabled 1");
}
else
MessageBox.Show("No device connected!");
FlexibleMessageBox.Show("No device connected!");
}
@@ -1350,7 +1409,10 @@ without him none of this would be possible
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 { }
try {
progressBar.Style = ProgressBarStyle.Continuous;
progressBar.Value = Convert.ToInt32((((double)downloaded / (double)allSize) * 100));
} catch { }
i++;
downloadSpeed /= 1000000;
@@ -1483,7 +1545,7 @@ without him none of this would be possible
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}"); }
try { Directory.Delete(Environment.CurrentDirectory + "\\" + gameName, true); } catch (Exception ex) { FlexibleMessageBox.Show($"Error deleting game files: {ex.Message}"); }
}
//Remove current game
@@ -1515,16 +1577,16 @@ without him none of this would be possible
private void ADBWirelessDisable_Click(object sender, EventArgs e)
{
DialogResult dialogResult = MessageBox.Show("Are you sure you want to delete your saved Quest IP address/command?", "Remove saved IP address?", MessageBoxButtons.YesNo);
DialogResult dialogResult = FlexibleMessageBox.Show("Are you sure you want to delete your saved Quest IP address/command?", "Remove saved IP address?", MessageBoxButtons.YesNo);
if (dialogResult == DialogResult.No)
{
MessageBox.Show("Saved IP data reset cancelled.");
FlexibleMessageBox.Show("Saved IP data reset cancelled.");
return;
}
else
{
ADB.WakeDevice();
MessageBox.Show("Make sure your device is not connected to USB and press OK.");
FlexibleMessageBox.Show("Make sure your device is not connected to USB and press OK.");
ADB.RunAdbCommandToString("shell USB");
Thread.Sleep(2000);
ADB.RunAdbCommandToString("disconnect");
@@ -1536,7 +1598,7 @@ without him none of this would be possible
Properties.Settings.Default.Save();
Program.form.GetDeviceID();
Program.form.ChangeTitlebarToDevice();
MessageBox.Show("Relaunch Rookie to complete the process and switch back to USB adb.");
FlexibleMessageBox.Show("Relaunch Rookie to complete the process and switch back to USB adb.");
}
}
@@ -1633,6 +1695,16 @@ without him none of this would be possible
{
if (e.KeyChar == (char)Keys.Enter)
{
if (searchTextBox.Visible)
{
if (Properties.Settings.Default.EnterKeyInstall)
{
if (gamesListView.SelectedItems.Count > 0)
downloadInstallGameButton_Click(sender, e);
}
}
searchTextBox.Visible = false;
label2.Visible = false;
label3.Visible = false;
@@ -1646,7 +1718,6 @@ without him none of this would be possible
ChangeTitle("");
}
ChangeTitle($"{ADB.RunAdbCommandToString(ADBcommandbox.Text)}");
ADBcommandbox.Visible = false;
label9.Visible = false;
label11.Visible = false;
@@ -1733,7 +1804,7 @@ without him none of this would be possible
{
ADB.WakeDevice();
GetDeviceID();
MessageBox.Show("If your device is not Connected, hit reconnect first or it won't work!\nNOTE: THIS MAY TAKE UP TO 60 SECONDS.\nThere will be a Popup text window with all updates available when it is done!", "Is device connected?", MessageBoxButtons.OKCancel);
FlexibleMessageBox.Show("If your device is not Connected, hit reconnect first or it won't work!\nNOTE: THIS MAY TAKE UP TO 60 SECONDS.\nThere will be a Popup text window with all updates available when it is done!", "Is device connected?", MessageBoxButtons.OKCancel);
listappsbtn();
initListView();
}
@@ -1742,7 +1813,7 @@ without him none of this would be possible
if (keyData == (Keys.F1) && !dialogisup)
{
dialogisup = true;
MessageBox.Show("Shortcuts:\nF1 -------- Shortcuts List\nF2 --OR-- CTRL+F: QuickSearch\nF3 -------- Quest Options\nF4 -------- Rookie Settings\nF5 -------- Refresh Gameslist\nF11 ------ Copy CrashLog to Desktop\nF12 ------ Copy Debuglog to Desktop\n\nCTRL+R - Run custom ADB command.\nCTRL+P - Copy packagename to clipboard on game select.\nCTRL + F4 - Instantly relaunch Rookie's Sideloader.");
FlexibleMessageBox.Show("Shortcuts:\nF1 -------- Shortcuts List\nF2 --OR-- CTRL+F: QuickSearch\nF3 -------- Quest Options\nF4 -------- Rookie Settings\nF5 -------- Refresh Gameslist\nF11 ------ Copy CrashLog to Desktop\nF12 ------ Copy Debuglog to Desktop\n\nCTRL+R - Run custom ADB command.\nCTRL+P - Copy packagename to clipboard on game select.\nCTRL + F4 - Instantly relaunch Rookie's Sideloader.");
dialogisup = false;
}
@@ -1750,7 +1821,7 @@ without him none of this would be possible
if (keyData == (Keys.Control | Keys.P))
{
DialogResult dialogResult = MessageBox.Show("Do you wish to copy Package Name of games selected from list to clipboard?", "Copy package to clipboard?", MessageBoxButtons.YesNo);
DialogResult dialogResult = FlexibleMessageBox.Show("Do you wish to copy Package Name of games selected from list to clipboard?", "Copy package to clipboard?", MessageBoxButtons.YesNo);
if (dialogResult == DialogResult.Yes)
{
Properties.Settings.Default.PackageNameToCB = true;
@@ -1764,27 +1835,24 @@ without him none of this would be possible
}
if (keyData == (Keys.F11))
if (File.Exists($"{Properties.Settings.Default.CurrentLogTitle}"))
if (File.Exists($"{Properties.Settings.Default.CurrentLogPath}"))
{
if (File.Exists($"{Properties.Settings.Default.CurrentLogTitle}"))
if (File.Exists($"{Properties.Settings.Default.CurrentLogTitle}"))
System.IO.File.Copy($"{Properties.Settings.Default.CurrentLogTitle}", $"{Environment.GetFolderPath(Environment.SpecialFolder.Desktop)}\\{Properties.Settings.Default.CurrentLogName}.txt", true);
MessageBox.Show($"{Properties.Settings.Default.CurrentLogName}.txt copied to your desktop!");
RCLONE.runRcloneCommand($"copy \"{Properties.Settings.Default.CurrentLogPath}\" RSL-debuglogs:DebugLogs");
FlexibleMessageBox.Show($"Your debug log has been copied to the server. Please mention your DebugLog ID ({Properties.Settings.Default.CurrentLogName}) to the Mods (it has been automatically copied to your clipboard).");
Clipboard.SetText(Properties.Settings.Default.CurrentLogName);
}
if (keyData == (Keys.F12))
if (File.Exists($"{Properties.Settings.Default.MainDir}\\crashlog.txt"))
if (File.Exists($"{Properties.Settings.Default.CurrentCrashPath}"))
{
if (File.Exists($"{Environment.GetFolderPath(Environment.SpecialFolder.Desktop)}\\crashlog.txt"))
File.Delete($"{Environment.GetFolderPath(Environment.SpecialFolder.Desktop)}\\crashlog.txt");
System.IO.File.Copy($"{Properties.Settings.Default.MainDir}\\crashlog.txt", $"{Environment.GetFolderPath(Environment.SpecialFolder.Desktop)}\\crashlog.txt", true);
MessageBox.Show("crashlog.txt copied to your desktop!");
RCLONE.runRcloneCommand($"copy \"{Properties.Settings.Default.CurrentCrashPath}\" RSL-debuglogs:CrashLogs");
FlexibleMessageBox.Show($"Your CrashLog has been copied to the server. Please mention your DebugLog ID ({Properties.Settings.Default.CurrentCrashName}) to the Mods (it has been automatically copied to your clipboard).");
Clipboard.SetText(Properties.Settings.Default.CurrentCrashName);
}
else
MessageBox.Show("No CrashLog found in Rookie directory.");
else
FlexibleMessageBox.Show("No CrashLog found in Rookie directory.");
return base.ProcessCmdKey(ref msg, keyData);
@@ -1811,8 +1879,6 @@ without him none of this would be possible
searchTextBox.Focus();
this.searchTextBox.KeyPress += new
System.Windows.Forms.KeyPressEventHandler(CheckEnter);
}
}
}
@@ -1821,8 +1887,6 @@ without him none of this would be possible
private void ADBcommandbox_Enter(object sender, EventArgs e)
{
this.searchTextBox.KeyPress += new
System.Windows.Forms.KeyPressEventHandler(CheckEnter);
ADBcommandbox.Focus();
@@ -1869,7 +1933,7 @@ without him none of this would be possible
{
ADB.WakeDevice();
GetDeviceID();
MessageBox.Show("If your device is not Connected, hit reconnect first or it won't work!\nNOTE: THIS MAY TAKE UP TO 60 SECONDS.\nThere will be a Popup text window with all updates available when it is done!", "Is device connected?", MessageBoxButtons.OKCancel);
FlexibleMessageBox.Show("If your device is not Connected, hit reconnect first or it won't work!\nNOTE: THIS MAY TAKE UP TO 60 SECONDS.\nThere will be a Popup text window with all updates available when it is done!", "Is device connected?", MessageBoxButtons.OKCancel);
listappsbtn();
initListView();
@@ -2026,17 +2090,6 @@ without him none of this would be possible
}
}
private void searchTextBox_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Enter)
{
if (Properties.Settings.Default.EnterKeyInstall)
{
if (gamesListView.SelectedItems.Count > 0)
downloadInstallGameButton_Click(sender, e);
}
}
}
private void pictureBox1_Click(object sender, EventArgs e)
{
@@ -2058,7 +2111,7 @@ without him none of this would be possible
{
Program.form.ChangeTitle($"Running adb command: ADB {ADBcommandbox.Text}");
string output = ADB.RunAdbCommandToString(ADBcommandbox.Text).Output;
MessageBox.Show($"Ran adb command: ADB {ADBcommandbox.Text}, Output: {output}");
FlexibleMessageBox.Show($"Ran adb command: ADB {ADBcommandbox.Text}, Output: {output}");
ADBcommandbox.Visible = false;
label9.Visible = false;
label11.Visible = false;
@@ -2085,6 +2138,16 @@ without him none of this would be possible
label11.Visible = false;
}
private void gamesQueListBox_MouseDown(object sender, MouseEventArgs e)
{
if (this.gamesQueListBox.SelectedItem == null) return;
this.gamesQueListBox.DoDragDrop(this.gamesQueListBox.SelectedItem, DragDropEffects.Move);
}
private void gamesQueListBox_DragOver(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.Move;
}
}
public static class ControlExtensions

View File

@@ -60,6 +60,46 @@ namespace AndroidSideloader.Properties {
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
public static System.Drawing.Bitmap battery {
get {
object obj = ResourceManager.GetObject("battery", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
public static System.Drawing.Bitmap battery1 {
get {
object obj = ResourceManager.GetObject("battery1", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
public static System.Drawing.Bitmap battery11 {
get {
object obj = ResourceManager.GetObject("battery11", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
public static System.Drawing.Bitmap bluekey {
get {
object obj = ResourceManager.GetObject("bluekey", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
@@ -80,6 +120,16 @@ namespace AndroidSideloader.Properties {
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
public static System.Drawing.Bitmap redkey {
get {
object obj = ResourceManager.GetObject("redkey", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>

View File

@@ -121,10 +121,25 @@
<data name="orangekey" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\orangekey.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="SearchGlass" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\SearchGlass.PNG;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="greenkey" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\greenkey.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="battery1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\battery11.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="battery" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\battery.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="SearchGlass" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\SearchGlass.PNG;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bluekey" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bluekey.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="redkey" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\redkey.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="battery11" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\battery1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

View File

@@ -181,7 +181,7 @@ namespace AndroidSideloader.Properties {
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("Microsoft Sans Serif, 12pt")]
[global::System.Configuration.DefaultSettingValueAttribute("Microsoft Sans Serif, 11pt")]
public global::System.Drawing.Font FontStyle {
get {
return ((global::System.Drawing.Font)(this["FontStyle"]));
@@ -506,12 +506,12 @@ namespace AndroidSideloader.Properties {
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string CurrentLogTitle {
public string CurrentLogPath {
get {
return ((string)(this["CurrentLogTitle"]));
return ((string)(this["CurrentLogPath"]));
}
set {
this["CurrentLogTitle"] = value;
this["CurrentLogPath"] = value;
}
}
@@ -530,12 +530,12 @@ namespace AndroidSideloader.Properties {
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string CurrentCrashTitle {
public string CurrentCrashPath {
get {
return ((string)(this["CurrentCrashTitle"]));
return ((string)(this["CurrentCrashPath"]));
}
set {
this["CurrentCrashTitle"] = value;
this["CurrentCrashPath"] = value;
}
}
@@ -550,5 +550,29 @@ 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")]
public bool QblindOn {
get {
return ((bool)(this["QblindOn"]));
}
set {
this["QblindOn"] = value;
}
}
}
}

View File

@@ -42,7 +42,7 @@
<Value Profile="(Default)">White</Value>
</Setting>
<Setting Name="FontStyle" Type="System.Drawing.Font" Scope="User">
<Value Profile="(Default)">Microsoft Sans Serif, 12pt</Value>
<Value Profile="(Default)">Microsoft Sans Serif, 11pt</Value>
</Setting>
<Setting Name="BackPicturePath" Type="System.String" Scope="User">
<Value Profile="(Default)" />
@@ -122,17 +122,23 @@
<Setting Name="DownUpHeld" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="CurrentLogTitle" Type="System.String" Scope="User">
<Setting Name="CurrentLogPath" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="CurrentLogName" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="CurrentCrashTitle" Type="System.String" Scope="User">
<Setting Name="CurrentCrashPath" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<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="QblindOn" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
</Settings>
</SettingsFile>

93
QuestForm.Designer.cs generated
View File

@@ -68,6 +68,7 @@ namespace AndroidSideloader
this.button1 = new System.Windows.Forms.Button();
this.QURfrRt = new System.Windows.Forms.ComboBox();
this.RefreshRateComboBox = new System.Windows.Forms.ComboBox();
this.WifiWake = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// label1
@@ -127,9 +128,9 @@ namespace AndroidSideloader
this.ResetQU.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.ResetQU.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.5F);
this.ResetQU.ForeColor = System.Drawing.SystemColors.ControlLight;
this.ResetQU.Location = new System.Drawing.Point(191, 555);
this.ResetQU.Location = new System.Drawing.Point(189, 555);
this.ResetQU.Name = "ResetQU";
this.ResetQU.Size = new System.Drawing.Size(167, 23);
this.ResetQU.Size = new System.Drawing.Size(168, 28);
this.ResetQU.TabIndex = 14;
this.ResetQU.Text = "RESET ALL FIELDS";
this.ResetQU.UseVisualStyleBackColor = false;
@@ -144,7 +145,7 @@ namespace AndroidSideloader
this.deleteButton.ForeColor = System.Drawing.SystemColors.ButtonHighlight;
this.deleteButton.Location = new System.Drawing.Point(13, 606);
this.deleteButton.Name = "deleteButton";
this.deleteButton.Size = new System.Drawing.Size(169, 25);
this.deleteButton.Size = new System.Drawing.Size(167, 25);
this.deleteButton.TabIndex = 15;
this.deleteButton.Text = "DELETE SAVED SETTINGS";
this.deleteButton.UseVisualStyleBackColor = false;
@@ -157,7 +158,7 @@ namespace AndroidSideloader
this.questPics.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.questPics.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.5F);
this.questPics.ForeColor = System.Drawing.SystemColors.ButtonHighlight;
this.questPics.Location = new System.Drawing.Point(17, 265);
this.questPics.Location = new System.Drawing.Point(15, 265);
this.questPics.Name = "questPics";
this.questPics.Size = new System.Drawing.Size(165, 25);
this.questPics.TabIndex = 5;
@@ -171,7 +172,7 @@ namespace AndroidSideloader
this.questVids.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.questVids.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.5F);
this.questVids.ForeColor = System.Drawing.SystemColors.ButtonHighlight;
this.questVids.Location = new System.Drawing.Point(191, 265);
this.questVids.Location = new System.Drawing.Point(189, 265);
this.questVids.Name = "questVids";
this.questVids.Size = new System.Drawing.Size(167, 25);
this.questVids.TabIndex = 6;
@@ -242,11 +243,11 @@ namespace AndroidSideloader
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(54, 678);
this.label13.Location = new System.Drawing.Point(53, 678);
this.label13.Name = "label13";
this.label13.Size = new System.Drawing.Size(262, 16);
this.label13.Size = new System.Drawing.Size(265, 16);
this.label13.TabIndex = 6;
this.label13.Text = "*For games that dont work with QU settings.";
this.label13.Text = "*For games that don\'t work with QU settings.";
this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// DeleteShots
@@ -287,7 +288,7 @@ namespace AndroidSideloader
//
this.label14.BackColor = System.Drawing.Color.White;
this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.label14.Location = new System.Drawing.Point(-15, 208);
this.label14.Location = new System.Drawing.Point(-15, 211);
this.label14.Name = "label14";
this.label14.Size = new System.Drawing.Size(394, 3);
this.label14.TabIndex = 17;
@@ -330,9 +331,9 @@ namespace AndroidSideloader
"2",
"3",
"4"});
this.CPUComboBox.Location = new System.Drawing.Point(13, 126);
this.CPUComboBox.Location = new System.Drawing.Point(13, 123);
this.CPUComboBox.Name = "CPUComboBox";
this.CPUComboBox.Size = new System.Drawing.Size(345, 28);
this.CPUComboBox.Size = new System.Drawing.Size(346, 28);
this.CPUComboBox.TabIndex = 2;
this.CPUComboBox.Text = "Select CPU level (0 for default)";
//
@@ -352,9 +353,9 @@ namespace AndroidSideloader
"2",
"3",
"4"});
this.GPUComboBox.Location = new System.Drawing.Point(13, 97);
this.GPUComboBox.Location = new System.Drawing.Point(13, 94);
this.GPUComboBox.Name = "GPUComboBox";
this.GPUComboBox.Size = new System.Drawing.Size(345, 28);
this.GPUComboBox.Size = new System.Drawing.Size(346, 28);
this.GPUComboBox.TabIndex = 1;
this.GPUComboBox.Text = "Select GPU level (0 for default)";
//
@@ -368,7 +369,7 @@ namespace AndroidSideloader
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(66, 20);
this.label7.Size = new System.Drawing.Size(59, 20);
this.label7.TabIndex = 3;
this.label7.Text = "Fov - X";
this.label7.Visible = false;
@@ -383,7 +384,7 @@ namespace AndroidSideloader
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(66, 20);
this.label8.Size = new System.Drawing.Size(59, 20);
this.label8.TabIndex = 3;
this.label8.Text = "Fov - Y";
this.label8.Visible = false;
@@ -396,9 +397,9 @@ namespace AndroidSideloader
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(11, 583);
this.label9.Location = new System.Drawing.Point(12, 583);
this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(117, 20);
this.label9.Size = new System.Drawing.Size(105, 20);
this.label9.TabIndex = 3;
this.label9.Text = "Refresh Rate";
this.label9.Visible = false;
@@ -411,9 +412,9 @@ namespace AndroidSideloader
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(13, 484);
this.label6.Location = new System.Drawing.Point(93, 484);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(206, 20);
this.label6.Size = new System.Drawing.Size(185, 20);
this.label6.TabIndex = 3;
this.label6.Text = "Enter Custom Username";
this.label6.Visible = false;
@@ -426,9 +427,9 @@ namespace AndroidSideloader
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(12, 434);
this.label5.Location = new System.Drawing.Point(16, 434);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(410, 20);
this.label5.Size = new System.Drawing.Size(362, 20);
this.label5.TabIndex = 3;
this.label5.Text = "Custom Resolution Width (Height auto calculated)";
this.label5.Visible = false;
@@ -441,11 +442,11 @@ 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(11, 183);
this.ResolutionLabel.Location = new System.Drawing.Point(9, 180);
this.ResolutionLabel.Name = "ResolutionLabel";
this.ResolutionLabel.Size = new System.Drawing.Size(241, 20);
this.ResolutionLabel.Size = new System.Drawing.Size(166, 20);
this.ResolutionLabel.TabIndex = 3;
this.ResolutionLabel.Text = "Resolution (p eye, 0=default)";
this.ResolutionLabel.Text = "Resolution (0=default)";
//
// FOVy
//
@@ -455,9 +456,9 @@ namespace AndroidSideloader
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(191, 507);
this.FOVy.Location = new System.Drawing.Point(189, 507);
this.FOVy.Name = "FOVy";
this.FOVy.Size = new System.Drawing.Size(167, 26);
this.FOVy.Size = new System.Drawing.Size(169, 26);
this.FOVy.TabIndex = 12;
this.FOVy.Text = "0";
this.FOVy.Visible = false;
@@ -519,9 +520,9 @@ 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, 155);
this.TextureResTextBox.Location = new System.Drawing.Point(13, 152);
this.TextureResTextBox.Name = "TextureResTextBox";
this.TextureResTextBox.Size = new System.Drawing.Size(169, 26);
this.TextureResTextBox.Size = new System.Drawing.Size(167, 26);
this.TextureResTextBox.TabIndex = 3;
this.TextureResTextBox.Text = "0";
//
@@ -534,9 +535,9 @@ namespace AndroidSideloader
this.QUEnable.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.QUEnable.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.QUEnable.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.QUEnable.Location = new System.Drawing.Point(191, 606);
this.QUEnable.Location = new System.Drawing.Point(189, 606);
this.QUEnable.Name = "QUEnable";
this.QUEnable.Size = new System.Drawing.Size(169, 25);
this.QUEnable.Size = new System.Drawing.Size(170, 25);
this.QUEnable.TabIndex = 16;
this.QUEnable.Text = "APPLY";
this.QUEnable.UseVisualStyleBackColor = false;
@@ -552,9 +553,9 @@ namespace AndroidSideloader
this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button1.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.button1.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.button1.Location = new System.Drawing.Point(191, 155);
this.button1.Location = new System.Drawing.Point(189, 152);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(167, 25);
this.button1.Size = new System.Drawing.Size(169, 25);
this.button1.TabIndex = 4;
this.button1.Text = "APPLY";
this.button1.UseVisualStyleBackColor = false;
@@ -575,7 +576,7 @@ namespace AndroidSideloader
"72",
"90",
"120"});
this.QURfrRt.Location = new System.Drawing.Point(12, 555);
this.QURfrRt.Location = new System.Drawing.Point(13, 555);
this.QURfrRt.Name = "QURfrRt";
this.QURfrRt.Size = new System.Drawing.Size(170, 28);
this.QURfrRt.TabIndex = 13;
@@ -597,12 +598,29 @@ namespace AndroidSideloader
"72",
"90",
"120"});
this.RefreshRateComboBox.Location = new System.Drawing.Point(13, 68);
this.RefreshRateComboBox.Location = new System.Drawing.Point(13, 65);
this.RefreshRateComboBox.Name = "RefreshRateComboBox";
this.RefreshRateComboBox.Size = new System.Drawing.Size(345, 28);
this.RefreshRateComboBox.Size = new System.Drawing.Size(346, 28);
this.RefreshRateComboBox.TabIndex = 0;
this.RefreshRateComboBox.Text = "Select refresh rate";
//
// WifiWake
//
this.WifiWake.BackColor = global::AndroidSideloader.Properties.Settings.Default.SubButtonColor;
this.WifiWake.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.WifiWake.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.WifiWake.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "SubButtonColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.WifiWake.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.WifiWake.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.WifiWake.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.WifiWake.Location = new System.Drawing.Point(189, 180);
this.WifiWake.Name = "WifiWake";
this.WifiWake.Size = new System.Drawing.Size(170, 25);
this.WifiWake.TabIndex = 4;
this.WifiWake.Text = "ENABLE WIFI WAKE";
this.WifiWake.UseVisualStyleBackColor = false;
this.WifiWake.Click += new System.EventHandler(this.WifiWake_Click);
//
// QuestForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@@ -642,15 +660,19 @@ namespace AndroidSideloader
this.Controls.Add(this.ResBox);
this.Controls.Add(this.TextureResTextBox);
this.Controls.Add(this.QUEnable);
this.Controls.Add(this.WifiWake);
this.Controls.Add(this.button1);
this.Controls.Add(this.QURfrRt);
this.Controls.Add(this.RefreshRateComboBox);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximumSize = new System.Drawing.Size(386, 776);
this.MinimumSize = new System.Drawing.Size(386, 776);
this.Name = "QuestForm";
this.ShowIcon = false;
this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Quest settings";
this.TopMost = true;
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.QuestForm_FormClosed);
this.Load += new System.EventHandler(this.QuestForm_Load);
this.ResumeLayout(false);
@@ -696,6 +718,7 @@ namespace AndroidSideloader
private Label label14;
private Label label15;
private Label label16;
private Button WifiWake;
}
}

View File

@@ -107,6 +107,7 @@ namespace AndroidSideloader
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)
{
@@ -124,9 +125,10 @@ namespace AndroidSideloader
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($"{Properties.Settings.Default.MainDir}\\Config.Json");
File.Delete($"{Environment.CurrentDirectory}\\Config.Json");
File.Delete($"{Environment.CurrentDirectory}\\delete_settings");
}
}
@@ -146,7 +148,7 @@ namespace AndroidSideloader
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);
@@ -170,6 +172,10 @@ namespace AndroidSideloader
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;
}
@@ -324,5 +330,11 @@ 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)");
}
}
}

View File

@@ -3,6 +3,7 @@ using System.Diagnostics;
using System.Text;
using System.IO;
using System.Windows.Forms;
using JR.Utils.GUI.Forms;
namespace AndroidSideloader
{
@@ -60,8 +61,12 @@ namespace AndroidSideloader
//set rclonepw
if (rclonepw.Length > 0)
command += " --ask-password=false";
Logger.Log($"Running Rclone command: {command}");
string logcmd = Utilities.StringUtilities.RemoveEverythingBeforeFirst(command, "rclone.exe");
if (logcmd.Contains($"\"{Properties.Settings.Default.CurrentLogPath}\""))
logcmd = logcmd.Replace($"\"{Properties.Settings.Default.CurrentLogPath}\"", $"\"{Properties.Settings.Default.CurrentLogName}\"");
if (logcmd.Contains(Environment.CurrentDirectory))
logcmd = logcmd.Replace($"{Environment.CurrentDirectory}", $"CurrentDirectory");
Logger.Log($"Running Rclone command: {logcmd}");
rclone.StartInfo.FileName = Environment.CurrentDirectory + "\\rclone\\rclone.exe";
rclone.StartInfo.Arguments = command;
@@ -106,7 +111,7 @@ namespace AndroidSideloader
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");
FlexibleMessageBox.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");
return prcoutput;
}

BIN
Resources/battery.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

BIN
Resources/battery1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

BIN
Resources/battery11.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

BIN
Resources/bluekey.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

6801
Resources/nouns.txt Normal file

File diff suppressed because it is too large Load Diff

BIN
Resources/redkey.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

180
SettingsForm.Designer.cs generated
View File

@@ -39,9 +39,13 @@
this.label1 = new System.Windows.Forms.Label();
this.BandwithComboBox = new System.Windows.Forms.ComboBox();
this.DebugLogCopy = new System.Windows.Forms.Button();
this.CrashLogCopy = new System.Windows.Forms.Button();
this.debuglogID = new System.Windows.Forms.Label();
this.crashlogID = new System.Windows.Forms.Label();
this.button1 = new System.Windows.Forms.Button();
this.debuglogID = new System.Windows.Forms.Label();
this.DebugID = new System.Windows.Forms.TextBox();
this.label2 = new System.Windows.Forms.Label();
this.textBox1 = new System.Windows.Forms.TextBox();
this.CblindBox = new System.Windows.Forms.CheckBox();
this.SuspendLayout();
//
// checkForUpdatesCheckBox
@@ -49,9 +53,9 @@
this.checkForUpdatesCheckBox.AutoSize = true;
this.checkForUpdatesCheckBox.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.checkForUpdatesCheckBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.checkForUpdatesCheckBox.Location = new System.Drawing.Point(13, 13);
this.checkForUpdatesCheckBox.Location = new System.Drawing.Point(12, 12);
this.checkForUpdatesCheckBox.Name = "checkForUpdatesCheckBox";
this.checkForUpdatesCheckBox.Size = new System.Drawing.Size(175, 24);
this.checkForUpdatesCheckBox.Size = new System.Drawing.Size(142, 21);
this.checkForUpdatesCheckBox.TabIndex = 0;
this.checkForUpdatesCheckBox.Text = "Check for updates";
this.checkForUpdatesCheckBox.UseVisualStyleBackColor = true;
@@ -66,7 +70,7 @@
this.applyButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.applyButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.applyButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.applyButton.Location = new System.Drawing.Point(12, 178);
this.applyButton.Location = new System.Drawing.Point(67, 230);
this.applyButton.Name = "applyButton";
this.applyButton.Size = new System.Drawing.Size(101, 31);
this.applyButton.TabIndex = 5;
@@ -79,9 +83,9 @@
this.enableMessageBoxesCheckBox.AutoSize = true;
this.enableMessageBoxesCheckBox.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.enableMessageBoxesCheckBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.enableMessageBoxesCheckBox.Location = new System.Drawing.Point(13, 36);
this.enableMessageBoxesCheckBox.Location = new System.Drawing.Point(12, 39);
this.enableMessageBoxesCheckBox.Name = "enableMessageBoxesCheckBox";
this.enableMessageBoxesCheckBox.Size = new System.Drawing.Size(367, 24);
this.enableMessageBoxesCheckBox.Size = new System.Drawing.Size(293, 21);
this.enableMessageBoxesCheckBox.TabIndex = 1;
this.enableMessageBoxesCheckBox.Text = "Enable Message Boxes on task completed";
this.enableMessageBoxesCheckBox.UseVisualStyleBackColor = true;
@@ -96,7 +100,7 @@
this.resetSettingsButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.resetSettingsButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.resetSettingsButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.resetSettingsButton.Location = new System.Drawing.Point(119, 178);
this.resetSettingsButton.Location = new System.Drawing.Point(174, 230);
this.resetSettingsButton.Name = "resetSettingsButton";
this.resetSettingsButton.Size = new System.Drawing.Size(101, 31);
this.resetSettingsButton.TabIndex = 4;
@@ -109,9 +113,9 @@
this.deleteAfterInstallCheckBox.AutoSize = true;
this.deleteAfterInstallCheckBox.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.deleteAfterInstallCheckBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.deleteAfterInstallCheckBox.Location = new System.Drawing.Point(13, 59);
this.deleteAfterInstallCheckBox.Location = new System.Drawing.Point(12, 65);
this.deleteAfterInstallCheckBox.Name = "deleteAfterInstallCheckBox";
this.deleteAfterInstallCheckBox.Size = new System.Drawing.Size(350, 24);
this.deleteAfterInstallCheckBox.Size = new System.Drawing.Size(279, 21);
this.deleteAfterInstallCheckBox.TabIndex = 3;
this.deleteAfterInstallCheckBox.Text = "Delete games after download and install";
this.deleteAfterInstallCheckBox.UseVisualStyleBackColor = true;
@@ -122,9 +126,9 @@
this.updateConfigCheckBox.AutoSize = true;
this.updateConfigCheckBox.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.updateConfigCheckBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.updateConfigCheckBox.Location = new System.Drawing.Point(13, 83);
this.updateConfigCheckBox.Location = new System.Drawing.Point(12, 92);
this.updateConfigCheckBox.Name = "updateConfigCheckBox";
this.updateConfigCheckBox.Size = new System.Drawing.Size(251, 24);
this.updateConfigCheckBox.Size = new System.Drawing.Size(201, 21);
this.updateConfigCheckBox.TabIndex = 6;
this.updateConfigCheckBox.Text = "Update config automatically";
this.updateConfigCheckBox.UseVisualStyleBackColor = true;
@@ -135,9 +139,9 @@
this.userJsonOnGameInstall.AutoSize = true;
this.userJsonOnGameInstall.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.userJsonOnGameInstall.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.userJsonOnGameInstall.Location = new System.Drawing.Point(13, 106);
this.userJsonOnGameInstall.Location = new System.Drawing.Point(12, 119);
this.userJsonOnGameInstall.Name = "userJsonOnGameInstall";
this.userJsonOnGameInstall.Size = new System.Drawing.Size(288, 24);
this.userJsonOnGameInstall.Size = new System.Drawing.Size(233, 21);
this.userJsonOnGameInstall.TabIndex = 9;
this.userJsonOnGameInstall.Text = "Push random user.json on install";
this.userJsonOnGameInstall.UseVisualStyleBackColor = true;
@@ -151,9 +155,9 @@
this.BandwithTextbox.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "TextBoxColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.BandwithTextbox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.BandwithTextbox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.BandwithTextbox.Location = new System.Drawing.Point(12, 148);
this.BandwithTextbox.Location = new System.Drawing.Point(52, 198);
this.BandwithTextbox.Name = "BandwithTextbox";
this.BandwithTextbox.Size = new System.Drawing.Size(177, 26);
this.BandwithTextbox.Size = new System.Drawing.Size(177, 23);
this.BandwithTextbox.TabIndex = 11;
//
// label1
@@ -161,9 +165,9 @@
this.label1.AutoSize = true;
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.Location = new System.Drawing.Point(10, 127);
this.label1.Location = new System.Drawing.Point(40, 175);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(298, 20);
this.label1.Size = new System.Drawing.Size(235, 17);
this.label1.TabIndex = 12;
this.label1.Text = "Download speed limiter, 0 to disable";
//
@@ -182,9 +186,9 @@
"K",
"M",
"G"});
this.BandwithComboBox.Location = new System.Drawing.Point(195, 146);
this.BandwithComboBox.Location = new System.Drawing.Point(235, 198);
this.BandwithComboBox.Name = "BandwithComboBox";
this.BandwithComboBox.Size = new System.Drawing.Size(55, 28);
this.BandwithComboBox.Size = new System.Drawing.Size(55, 24);
this.BandwithComboBox.TabIndex = 13;
//
// DebugLogCopy
@@ -196,7 +200,7 @@
this.DebugLogCopy.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.DebugLogCopy.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.DebugLogCopy.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.DebugLogCopy.Location = new System.Drawing.Point(12, 223);
this.DebugLogCopy.Location = new System.Drawing.Point(29, 275);
this.DebugLogCopy.Name = "DebugLogCopy";
this.DebugLogCopy.Size = new System.Drawing.Size(285, 31);
this.DebugLogCopy.TabIndex = 5;
@@ -204,58 +208,124 @@
this.DebugLogCopy.UseVisualStyleBackColor = false;
this.DebugLogCopy.Click += new System.EventHandler(this.DebugLogCopy_click);
//
// CrashLogCopy
//
this.CrashLogCopy.BackColor = global::AndroidSideloader.Properties.Settings.Default.SubButtonColor;
this.CrashLogCopy.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.CrashLogCopy.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.CrashLogCopy.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "SubButtonColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.CrashLogCopy.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.CrashLogCopy.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.CrashLogCopy.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.CrashLogCopy.Location = new System.Drawing.Point(12, 296);
this.CrashLogCopy.Name = "CrashLogCopy";
this.CrashLogCopy.Size = new System.Drawing.Size(285, 31);
this.CrashLogCopy.TabIndex = 5;
this.CrashLogCopy.Text = "Copy CrashLog to Desktop";
this.CrashLogCopy.UseVisualStyleBackColor = false;
this.CrashLogCopy.Click += new System.EventHandler(this.CrashLogCopy_click);
//
// debuglogID
//
this.debuglogID.AutoSize = true;
this.debuglogID.Font = new System.Drawing.Font("Microsoft Sans Serif", 11F);
this.debuglogID.Location = new System.Drawing.Point(15, 260);
this.debuglogID.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.debuglogID.Name = "debuglogID";
this.debuglogID.Size = new System.Drawing.Size(0, 18);
this.debuglogID.TabIndex = 14;
//
// crashlogID
//
this.crashlogID.AutoSize = true;
this.crashlogID.Location = new System.Drawing.Point(13, 333);
this.crashlogID.Location = new System.Drawing.Point(13, 406);
this.crashlogID.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.crashlogID.Name = "crashlogID";
this.crashlogID.Size = new System.Drawing.Size(0, 13);
this.crashlogID.TabIndex = 15;
//
// button1
//
this.button1.BackColor = global::AndroidSideloader.Properties.Settings.Default.SubButtonColor;
this.button1.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.button1.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.button1.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "SubButtonColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button1.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.button1.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.button1.Location = new System.Drawing.Point(29, 310);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(285, 31);
this.button1.TabIndex = 5;
this.button1.Text = "Reset Debug Log";
this.button1.UseVisualStyleBackColor = false;
this.button1.Click += new System.EventHandler(this.button1_click);
//
// debuglogID
//
this.debuglogID.Font = new System.Drawing.Font("Microsoft Sans Serif", 11F);
this.debuglogID.Location = new System.Drawing.Point(29, 386);
this.debuglogID.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.debuglogID.Name = "debuglogID";
this.debuglogID.Size = new System.Drawing.Size(285, 48);
this.debuglogID.TabIndex = 14;
this.debuglogID.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// DebugID
//
this.DebugID.AccessibleRole = System.Windows.Forms.AccessibleRole.Row;
this.DebugID.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
this.DebugID.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.DebugID.Cursor = System.Windows.Forms.Cursors.Default;
this.DebugID.Font = new System.Drawing.Font("Microsoft Sans Serif", 13.8F, System.Drawing.FontStyle.Bold);
this.DebugID.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.DebugID.Location = new System.Drawing.Point(29, 357);
this.DebugID.Margin = new System.Windows.Forms.Padding(2);
this.DebugID.Name = "DebugID";
this.DebugID.ReadOnly = true;
this.DebugID.ScrollBars = System.Windows.Forms.ScrollBars.Horizontal;
this.DebugID.Size = new System.Drawing.Size(285, 21);
this.DebugID.TabIndex = 16;
this.DebugID.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.DebugID.Click += new System.EventHandler(this.DebugID_Click);
//
// label2
//
this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 11F);
this.label2.Location = new System.Drawing.Point(29, 457);
this.label2.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(284, 86);
this.label2.TabIndex = 14;
this.label2.Text = "This is your most recent CrashLogID. Click on the CrashLogID to copy it to your c" +
"lipboard.";
this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// textBox1
//
this.textBox1.AccessibleRole = System.Windows.Forms.AccessibleRole.Row;
this.textBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
this.textBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.textBox1.Cursor = System.Windows.Forms.Cursors.Default;
this.textBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 13.8F, System.Drawing.FontStyle.Bold);
this.textBox1.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.textBox1.Location = new System.Drawing.Point(29, 440);
this.textBox1.Margin = new System.Windows.Forms.Padding(2);
this.textBox1.Name = "textBox1";
this.textBox1.ReadOnly = true;
this.textBox1.ScrollBars = System.Windows.Forms.ScrollBars.Horizontal;
this.textBox1.Size = new System.Drawing.Size(285, 21);
this.textBox1.TabIndex = 16;
this.textBox1.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.textBox1.Click += new System.EventHandler(this.textBox1_Click);
//
// CblindBox
//
this.CblindBox.AutoSize = true;
this.CblindBox.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.CblindBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.CblindBox.Location = new System.Drawing.Point(12, 146);
this.CblindBox.Name = "CblindBox";
this.CblindBox.Size = new System.Drawing.Size(175, 21);
this.CblindBox.TabIndex = 9;
this.CblindBox.Text = "Enable colorblind mode";
this.CblindBox.UseVisualStyleBackColor = true;
this.CblindBox.CheckedChanged += new System.EventHandler(this.CblindBox_CheckedChanged);
this.CblindBox.Click += new System.EventHandler(this.CblindBox_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.ClientSize = new System.Drawing.Size(313, 372);
this.ClientSize = new System.Drawing.Size(342, 535);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.DebugID);
this.Controls.Add(this.crashlogID);
this.Controls.Add(this.label2);
this.Controls.Add(this.debuglogID);
this.Controls.Add(this.BandwithComboBox);
this.Controls.Add(this.label1);
this.Controls.Add(this.BandwithTextbox);
this.Controls.Add(this.CblindBox);
this.Controls.Add(this.userJsonOnGameInstall);
this.Controls.Add(this.updateConfigCheckBox);
this.Controls.Add(this.deleteAfterInstallCheckBox);
this.Controls.Add(this.enableMessageBoxesCheckBox);
this.Controls.Add(this.CrashLogCopy);
this.Controls.Add(this.button1);
this.Controls.Add(this.DebugLogCopy);
this.Controls.Add(this.applyButton);
this.Controls.Add(this.checkForUpdatesCheckBox);
@@ -263,9 +333,11 @@
this.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "BackColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.ForeColor = System.Drawing.Color.White;
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.Name = "SettingsForm";
this.ShowIcon = false;
this.Text = "Settings";
this.TopMost = true;
this.Load += new System.EventHandler(this.SettingsForm_Load);
this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.SettingsForm_KeyPress);
this.Leave += new System.EventHandler(this.SettingsForm_Leave);
@@ -287,8 +359,12 @@
private System.Windows.Forms.Label label1;
private System.Windows.Forms.ComboBox BandwithComboBox;
private System.Windows.Forms.Button DebugLogCopy;
private System.Windows.Forms.Button CrashLogCopy;
private System.Windows.Forms.Label crashlogID;
private System.Windows.Forms.Button button1;
public System.Windows.Forms.Label debuglogID;
private System.Windows.Forms.TextBox DebugID;
public System.Windows.Forms.Label label2;
private System.Windows.Forms.TextBox textBox1;
private System.Windows.Forms.CheckBox CblindBox;
}
}

View File

@@ -15,20 +15,11 @@ namespace AndroidSideloader
private void SettingsForm_Load(object sender, EventArgs e)
{
this.CenterToParent();
if (!Properties.Settings.Default.CurrentLogName.Equals(null))
{
if (!Properties.Settings.Default.CurrentLogTitle.Equals(null))
{
Properties.Settings.Default.CurrentLogName = Properties.Settings.Default.CurrentLogTitle.Replace($"{Environment.CurrentDirectory}\\", "");
Properties.Settings.Default.Save();
Properties.Settings.Default.CurrentLogName = Properties.Settings.Default.CurrentLogName.Replace($".txt", "");
Properties.Settings.Default.Save();
}
}
debuglogID.Text = "DEBUGLOG ID: " + Properties.Settings.Default.CurrentLogName;
if (!string.IsNullOrEmpty(Properties.Settings.Default.CurrentLogName))
textBox1.Text = Properties.Settings.Default.CurrentCrashName;
if (!string.IsNullOrEmpty(Properties.Settings.Default.CurrentLogPath))
DebugID.Text = Properties.Settings.Default.CurrentLogName;
debuglogID.Text = "This is your DebugLogID. Click on your DebugLogID to copy it to your clipboard.";
intSettings();
intToolTips();
}
@@ -36,6 +27,7 @@ namespace AndroidSideloader
//Init form objects with values from settings
private void intSettings()
{
CblindBox.Checked = Properties.Settings.Default.QblindOn;
checkForUpdatesCheckBox.Checked = Properties.Settings.Default.checkForUpdates;
enableMessageBoxesCheckBox.Checked = Properties.Settings.Default.enableMessageBoxes;
deleteAfterInstallCheckBox.Checked = Properties.Settings.Default.deleteAllAfterInstall;
@@ -65,34 +57,46 @@ namespace AndroidSideloader
public void DebugLogCopy_click(object sender, EventArgs e)
{
if (File.Exists($"{Properties.Settings.Default.CurrentLogTitle}"))
if (File.Exists($"{Properties.Settings.Default.CurrentLogPath}"))
{
RCLONE.runRcloneCommand($"copy \"{Environment.CurrentDirectory}\\{Properties.Settings.Default.CurrentLogTitle}\" RSL-debuglog: --progress --drive-acknowledge-abuse --rc", Properties.Settings.Default.BandwithLimit);
MessageBox.Show($"Your debug log has been copied to the server. Please mention your DebugLog ID to the Mods\n\nDebugLog ID - {Properties.Settings.Default.CurrentLogName}");
RCLONE.runRcloneCommand($"copy \"{Properties.Settings.Default.CurrentLogPath}\" RSL-debuglogs:DebugLogs/");
MessageBox.Show($"Your debug log has been copied to the server. Please mention your DebugLog ID ({Properties.Settings.Default.CurrentLogName}) to the Mods (it has been automatically copied to your clipboard).");
}
}
public void CrashLogCopy_click(object sender, EventArgs e)
public void button1_click(object sender, EventArgs e)
{
if (File.Exists($"{Properties.Settings.Default.MainDir}\\crashlog.txt"))
if (File.Exists($"{Properties.Settings.Default.CurrentLogPath}"))
File.Delete($"{Properties.Settings.Default.CurrentLogPath}");
if (File.Exists($"{Environment.CurrentDirectory}\\debuglog.txt"))
File.Delete($"{Environment.CurrentDirectory}\\debuglog.txt");
if (File.Exists($"{Environment.CurrentDirectory}\\nouns\\nouns.txt"))
{
if (File.Exists($"{Environment.GetFolderPath(Environment.SpecialFolder.Desktop)}\\crashlog.txt"))
File.Delete($"{Environment.GetFolderPath(Environment.SpecialFolder.Desktop)}\\crashlog.txt");
System.IO.File.Copy($"{Properties.Settings.Default.MainDir}\\crashlog.txt", $"{Environment.GetFolderPath(Environment.SpecialFolder.Desktop)}\\crashlog.txt", true);
MessageBox.Show("crashlog.txt copied to your desktop!");
string[] lines = File.ReadAllLines($"{Environment.CurrentDirectory}\\nouns\\nouns.txt");
Random r = new Random();
int x = r.Next(6806);
int y = r.Next(6806);
string randomnoun = lines[new Random(x).Next(lines.Length)];
string randomnoun2 = lines[new Random(y).Next(lines.Length)];
string combined = randomnoun + "-" + randomnoun2;
Properties.Settings.Default.CurrentLogPath = Environment.CurrentDirectory + "\\" + combined + ".txt";
Properties.Settings.Default.CurrentLogName = combined;
Properties.Settings.Default.Save();
DebugID.Text = combined;
this.Close();
SettingsForm Form = new SettingsForm();
Form.Show();
}
else
MessageBox.Show("No crashlog found!");
}
//Apply settings
private void applyButton_Click(object sender, EventArgs e)
{
@@ -174,6 +178,36 @@ namespace AndroidSideloader
}
return base.ProcessDialogKey(keyData);
}
private void DebugID_Click(object sender, EventArgs e)
{
if (File.Exists(Environment.CurrentDirectory + "\\" + Properties.Settings.Default.CurrentLogName + ".txt"))
Clipboard.SetText(DebugID.Text);
MessageBox.Show("DebugLogID copied to clipboard! Paste it to a moderator/helper for assistance!");
}
private void textBox1_Click(object sender, EventArgs e)
{
if (!String.IsNullOrEmpty(Properties.Settings.Default.CurrentCrashName))
{
Clipboard.SetText(textBox1.Text);
MessageBox.Show("CrashLogID copied to clipboard! Paste it to a moderator/helper for assistance!");
}
}
private void CblindBox_CheckedChanged(object sender, EventArgs e)
{
Properties.Settings.Default.QblindOn = CblindBox.Checked;
Properties.Settings.Default.Save();
}
private void CblindBox_Click(object sender, EventArgs e)
{
if (CblindBox.Checked)
MessageBox.Show("You must restart Rookie's Sideloader OR click Refresh Updates List for changes to take effect.\n\nNOTE: Colors in the legend at the top right of the main window of Rookie won't update until you restart the program.");
}
}
}

View File

@@ -32,9 +32,15 @@ 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 void UpdateNouns(string remote)
{
RCLONE.runRcloneCommand($"sync \"{remote}:{RcloneGamesFolder}/.meta/nouns\" \"{Nouns}\"");
}
public static void UpdateGamePhotos(string remote)
{
RCLONE.runRcloneCommand($"sync \"{remote}:{RcloneGamesFolder}/.meta/thumbnails\" \"{ThumbnailsFolder}\"");

View File

@@ -17,7 +17,7 @@ namespace AndroidSideloader
private static string RawGitHubUrl;
private static string GitHubUrl;
static readonly public string LocalVersion = "2.2.1";
static readonly public string LocalVersion = "2.4.7";
public static string currentVersion = string.Empty;
public static string changelog = string.Empty;

View File

@@ -6,7 +6,7 @@ namespace AndroidSideloader
{
class Logger
{
public string logfile = Properties.Settings.Default.CurrentLogTitle;
public string logfile = Properties.Settings.Default.CurrentLogPath;
public static bool Log(string text, bool ret = true)
{
@@ -17,7 +17,7 @@ namespace AndroidSideloader
string newline = "\n";
if (text.Length > 40 && text.Contains("\n"))
newline += "\n\n";
try { File.AppendAllText(Properties.Settings.Default.CurrentLogTitle, time + text + newline); } catch { }
try {File.AppendAllText(Properties.Settings.Default.CurrentLogPath, time + text + newline); } catch { }
return ret;
}
return ret;

View File

@@ -1,12 +1,207 @@
2.2.1
Turned bold font off.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
RSL 2.4.7
+ Added battery percentage to stats on bottom left.
= Fixed using ENTER key to install option.
= Fixed using Enter to install from Quick Search.
= Fixed install feed message when using Enter to Install.
= All important message boxes will remain on top
until user selects an option..
= Settings form and Quest Options form will remain on top
until closed.
= Fixed changelog formatting so updater box isn't so wide.
HFP
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD9N54ACgkQx/Rql1Vo
czfz2g/+OEMxQBKrmWaeXpe4CD1jXs92P/JMU6DPBepNNiKtE+ltX1iG/I1Ft/04
JzFLJqqQsVKP9HceZBkNie87C4YdTu5Z3LUEOS626IVlEx1t0cxXilsVeXWrFSSJ
IyAgRbXZKQRVF+nhR0yXLUSjAQqlxLTuu9kxCXOHBPSqw+MmDCukUat9SoJUFpRO
+bteP/Y+ihUHHaBcD9AizJJpTzuCgKrKUtyNDPcXPIcOoosx459+tsG+mOAilEay
UHMwQoe21//mJJSsaCPPNYOWkY/BV1JNA4dDE+eBoK02U+SXVyh50eO1LFlV1wDd
0XL0O2npdVKjhszpWk2LuyErhaRB6EDMJvNvA8RgWHMF8gR20NPPM183ui79XRr1
bPpAXWbNEVn1OOOcAD+wTwLB6BCc1ryuI4zTHejQufWLQdVMaWKxhREo7bqTWTh+
4WPLZEC3JOy4uODb2tTJLz0qCBaxXNdr0usVxbO5OaGSKOBsJ2GsBlfBTNCr6If6
tMMi2DXSTYAuIgESCqFo4cEz2YGEmOrIqQ7nx9tBhGV2bfnClBbbiYAmM15ifRHG
QHmGhak7h/NFTawOGrS4BV2HfViBR1ef7FJ9v3T4chVJN+ED9tLpfMNKuTLOZ3at
dwUOnA4jfDJL2g5YV8ebiAzPS75FSSrQ2wfcyYYyywTdlBc5K58=
=0eX4
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
RSL 2.4.6
+ Added a colorblind mode for the update list. It can be found
in the SETTINGS menu.
HFP
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD7Q1UACgkQx/Rql1Vo
czeuyw/9Grjaeaz0fpM1eq4luU2sKUGReCEjRzZlWv++KqJoLY5BxUZ7rkrrb5jD
oZ5yK88er1lgsii1YBMBjr4ub7K7LEJ13KCagCUJX2wjG1FUGbGtiIdfFf+ryFky
2+OfA3thCxmVCbRRHKzYQ7fks0rd1D62S4qQO/xFE1QbckPSFInLz6wno++WP4iT
Ht7g4us8IKs51kGbjGx5EuA9suG5bDQrrx6QoUMORIEGMVJdoUX286KIUpS6iy1G
nMS/kQePg45+2Y6GDDgCtfRDjqie4J2U3UpXaBQnYAr0tcW116Q54VB9d6aArmKu
DfC/JnUCes3eN9Y/vxHXytoy7RLy+VRQiZw0C6deX4N+XrmPXSGsZboU/YMpFKsV
/6q5EXc0SPDK409HSiFCi5GinIp8mnuGJnIRcwWFFxU9kYBMOjTBA2wHSEcneoZa
8aDYd0fTLNyh/W/vwYnH989ihXWg+reHAyeGym+0u9TUqeWAwbGzyoYaLCri36pK
Pp0pQGOQgt/+s+9evKtMt7YcvnadvdoA2FowVp71HlR23fZb9yLctRPI/cJd6U57
3DBOiPJDb8U4pCo7xf3GZgluBRc/KMGqMysi4S3Hpez2yZ68gvGJh5F7f8OVyGHt
CwVhODnbDlX5W8hYMF23K4B8zSaZpnVJQXYQS5SCzPagg/Pbt8E=
=Glvg
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
RSL 2.4.5
= fixed issue where removing userfolder from adb command changes
broke install.txt
HFP
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD4fqgACgkQx/Rql1Vo
czd4+g/9ErNeHrdTMIMjCaaQ10ywDyWuoRSMeIik7p+ihaqv6iVDCEeyctjRQ6xF
eSS52USKMq+4bwnxNHDJsgtALzcKcvxVfVnyPh37t+9CRogNvGx3xWF5JVSBLbSz
TUpnlhKYkmgwxRLQ+vEnH2GOS4eJb/uuQJA3kSMJeXuocTUhFwQ3QRTdVJAv7U8H
RuB0qBwCXjU/0MmJqjzRm9nlIuln8zAFGGuGid+dC+hlcoGxgNeADB/7eUma3S+N
p05E+SCDQKtKDjktiiOXHFAuu9+GR9zlfN6yYoampwEqRYukWje6iMol2ht5atQR
+QgcotrurrZDk/uBrfD2/Q4bhs9ugOCbXns59HHoC01+TyErDgpO3sr5RUSkaY/Y
JSZ+3AaJPPqNMvrkK9usl1Uv2yNb66VIqQf6FYgt7+PAg5uFJVA1AxquwdisKtm3
7jFdCri0afBcCd1wYwJg2uajg4xWZsu4KcOZTuJ6vrTi8BZOJQ9LIRU87c6gWhfu
CdQqajGVpDN/dPEIraCoZwcdQTMJIfKYQEbUOWjavVkEpEA8evIoMpLS+zuqbLa/
39Dj8DIuP1xv8ZdW/I18Sz21YFL2xZm52M3EKZ4xrDQygK9G70cn9M2o922ZzQHb
VrxFSBWrhtz2XgrBajXtQy5+fdKAcT1lwUakSd5jBP5ZX//s30w=
=hKFE
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
RSL 2.4.4
= Updated logs to remove all instances of windows user folder
for privacy purposes.
HFP
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD4Ym8ACgkQx/Rql1Vo
czfCuA//elSOQ1dUQactp0BZ7cdpDcgoW4YwpEzddc96PwVYULsRxNnREIWKTrjg
2IGDhR53M9kTpsQ51lFwn+IAanKSl7dTsMh+yJDuZenKJga6eECaxiDHPu6JWnQY
Hy/zA012f8qoMfK/w0Ti2X3ITMtHGDqhewU9KdNGQNuAp8bH8o6lyqV01QFvyts+
FTGVB/76I9/OpffDX3fTxTS8PYJvGNAArowAOvYFhf2JcjdjpULo/oH9BVAoCoGT
8XmTYU/rAukmpWy3ensq0FxtjdD/tJt2NKgJcEzJDpkuxMYdzWUW7Sum+mexyX7k
VErW/s3w3rUHM/xW7NZgmRcpAqSRwpvvrSFxAKmGXNxEYmWrJ1jM5Nt6zjxzgk8J
0W7v1M+e/qoUz1HB42Fk++lWENhvZcjJkdRIh8NfjufiA5jc0cZXyZMJClXvMA1K
kG2PP4OqPnUNZdSPUafSGGjKlkr35tRV8SY1mx9phnMGgMZaVk6V0TPKVjHTfSsV
FBlFBuUl4EoQUz5bKUNhVszz3Y70aTBRk2M31GjojaBpOrHIj2Z0YiWoFp5maD2o
cfQ4HjhHAQAqyoD4ID9phgP9UOa0T9eoc1otkzCfRMAkBPS2DysFPpqNCdKOuuJy
gtfsvQxhALWe1qdDohIOekb2exmKj4NREGI5UjtgT+7Uf13s0Jo=
=8ePT
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
RSL 2.4.3
= Moved nouns.txt library to a more suitable location.
HFP
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD4T5kACgkQx/Rql1Vo
czd9Ew/+LvPnoSuNl3ynFRAjTs8Yo1r2FCY82UfWLLddYTc4waH4s2HZQkUyFBGo
emkvZUa/TZuYGzNLAB4JpPDYYONyF2LmOx8z0Pwtp1+RoEJbGe7WsZa3oF+PQ2AU
+1+hE0u8RW546uaGdzyToX3N5JnPAA2MctG0+3X5J+k8C+CHWgMJyoDnoz62b2Qb
gER2HZMBlrebJwSJto+tKeLRDk2FI4UmQDu2CQpvlwkQMwa98ORRrulaO4LOEH3I
z5S6WyxlcF0Cy4dwD5PVsx4YTHn7Rjy9HHniMYe+vv7LQOz6w+DZZQv6x1BZ2xSF
ZqS76T3x5XAVpcH2JX7gce7dTFVpft/P/C/vOVAa8E2pUp3stuUFoIyVoeWPwgvJ
3wkJFeoG4umlLQZY934Mb6Hb2tu38xlcQd/xsO3aZRPUOZBuYMcbpf8V7qv7f+p+
YDSXwI92ostB3RNkXlUy2onSWrXoLQF70lq3zaNcUeyQt6HILc80h1pXC6VWnITz
RRH9ojt6CWLyzIXKgqdKWKVJJQ5GIR0YITk4kMyGqM/CP3pUPCUKPAVbWK4ajoGA
1A2JBniQwYmCj+vkfQDpwkacK3zmYy/JRpTYdyj7BuOXjGnPpberjdd+jpgGBRCH
IeOpD/kmWaKm5lH1KmEOPGe86bhpQstOba7EsiBM4/x6QpoqVOU=
=yWnO
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
RSL 2.4HF
= Fixed issues with debuglog and crashlog upload. Both can now be
shared with moderation staff without issue.
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD2W+cACgkQx/Rql1Vo
cze+rg/9GOtWFgd3CPRvsyvQCwdzWHDTdtFWSWEhmuSSwk80fXGu5vJYeadErZ/f
HrHvZ6I/DDvaEkCNpFncuWI7kO7TNp2qu7WLE0X+4XOyNLNbLWPaxyz5nxyRLyNr
tPFCrZbBVbTFs7I5qZKmquV2FTPDnkaZle7B0NN+yvyzQ3KC1DYEwtNNOJBKhZPt
sgZYpEqSoj3Ju5VcoXJH5Va4ADDpOaRMUVNtmBmKwWxPdornZRpZExNW4Nocsm8B
J/2Elw01FLNGkwlk5MwN9bZL0/pdtsdVDh9JlAiDFrnvTP+kRYNlT+AzVVxFa7c6
JzwdBkZQYNiklCR5DioH0JzH2lOiIYbUnd09pMnC2UWLDwEXqaf5hE/1f1hDI2qN
/Kllw5jHeL6GPxgurU+iAGGdfTNtpOxWu6buc7Qm+WQ7o1IqvGX4O9L8wUl09m/m
8/BIOcJBfdqTgdVWb+JSXD9lJiJVshfcxoIHDW4uWOnn5y97a+c8Eev78cJA/MaR
3dmdjErxHBe09ujAlTLZZZLVsTtYOm9wj2OcrzqmG+T4fWvsNOnTXFeA2fqchqz9
ztaMHsXZhs1Ls7cVPXaxlAjwY2gAVHJMOn/5okc8qEFAzF4Qcfu6YXfYvWXzaeK0
LhdoFfG5FLbk2cwKGVmMCPnjAAUJCGZCpmeMaSQscd73j3ezJ3c=
=bnNu
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
RSL 2.3
+ Added UniqueID naming system and LOG uupload options for DebugLog
and CrashLogs to help fix user problems much faster and systematically.
NOTE: You must Download+Install at least one game game to update the
remote config before tyrying to submit any Logs!
= Fixed MAJOR obb copy bug.
IMPORTANT: Please Mount your Quest and check your /sdcard/android/obb
folder for any folders that aren't formatted a website like this:
com.blah.blah, if you have some there, delete them they are not
supposed to be there.
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmD0uooACgkQx/Rql1Vo
czcQig/6AkstnLYRNJBToM+cKF9bA/1Fu/HLPVahRYIgix10JKka1Lq+jbe/wQm+
taa29k7e4YQWwWQJqO0exrK9oaXX8kavVcB/mRG9OR0Bn4xWAdC6GwKA4SKX9rog
xdEh+zEuaOa2AsPQwjwxrFma9aYOtkIYpCcKTukZNrmmkIL71hKJJLD/dnhj7HLR
VvMjdrASrMOO19apDMcSaceEbJ0leDbLTj6nrLxb9dNbrBUcC+lGJ8ZXrrwd1pai
um0uHMXboYbZ7KXMzgXX9lRjt5Csl0XkOPLmmhoGSolazfmdFvswgQ4bouq2SwYw
Fme0hQlyZjr6wmnOFI16ZKDRgTl6tnMch+oAeU9kf6NxMqKFiFDKPp7EEeNBfMKk
olyWS4D16UYEE7e+R9xA2rD+WwyrZsv5J5OghgIXjcfuHY8nXzSITlgvt+igOt3Q
OWC8AHI5L/PgYwv/Z6vIDjEcPbMvsVpEpvE2KL8KIA1+2JAkSNxGpdv1h2pxixSr
sqXeMASTfKBVIZu5mNsWSG/MHYFk7/rgEpWnTjF8Dmw0ZHxPd9OMOu8jZ3EH0gBz
lYLAcZcpSC8itMN1hxdluwYT9MvXqJ5+NBEYdCUy1rhHOuoad1cnkizqgiHuOVqw
ZF9xcPCZdA+5HhEqASlt60+kFQ3Z53j68kOsCLNDU2cwWF+rxO4=
=L7zi
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
RSL 2.2
+ Added custom naming scheme to Debug Log. Debug Log now uses 2 random nouns as its name when generated.
+ Added custom naming scheme to Debug Log. Debug Log now uses 2 random
nouns as its name when generated.
+ Added shortcut commands. Press F1 to see list of shortcuts.
F1 = Shortcuts List
@@ -22,10 +217,16 @@ RSL 2.2
CTRL + P = Copy package name of selected game to Clipboard.
CTRL + F4 = Restart program.
+ Added ability to upload debug logs to remote server (the server should be updated to reflect this sometime this week!)
= If Install.txt exists apk install and Obb copy will only be run from install.txt - this is to prevent double copy of obb files or double install of APKS.
= Fixed issue where if user started DL+install on one title then quickly selected a different title in the games list it would download the newly selected item instead of the originally intended item.
= Fixed issue that caused download progress bar to not work if multiple items were queued.
+ Added ability to upload debug logs to remote server (the server
should be updated to reflect this sometime this week!)
= If Install.txt exists apk install and Obb copy will only be run
from install.txt - this is to prevent double copy of obb files or
double install of APKS.
= Fixed issue where if user started DL+install on one title then
quickly selected a different title in the games list it would
download the newly selected item instead of the originally
intended item.= Fixed issue that caused download progress bar
to not work if multiple items were queued.
= Fixed other obb copying issues.
-----BEGIN PGP SIGNATURE-----
@@ -76,7 +277,8 @@ Hash: SHA256
RSL 2.1.5
+ Added Releasename to installing messages and download size message.
+ Added Releasename to installing messages and download size
message.
= Mulitple bugfixes.
-----BEGIN PGP SIGNATURE-----
@@ -107,7 +309,8 @@ Hash: SHA256
RSL 2.1.3.2
+ Added checkbox to enable Enter to Download+Install.
= Fixed crash that occurred when user held down up arrow or down arrow on gamelist.
= Fixed crash that occurred when user held down up arrow or down
arrow on gamelist.
= Fixed all issues with Install.txt path.
= Clicking out of search box now closes it.
-----BEGIN PGP SIGNATURE-----
@@ -133,14 +336,19 @@ Hash: SHA256
2.1.3.1
= Fixed issue where if using Quick Search and game was near bottom of list it wouldn't be selected.
+ Added hidden CTRL+P shortcut that copies the packagename of selected game to clipboard (for ease of finding OBB/Save folders or adding images for games).
= Fixed issue where if using Quick Search and game was near bottom of
list it wouldn't be selected.
+ Added hidden CTRL+P shortcut that copies the packagename of selected
game to clipboard (for ease of finding OBB/Save folders or adding images
for games).
2.1.3
+ Added Quicksearch
+ Added shortcut (CTRL+F) to open Quicksearch
+ Crashlog window can now open folder directory with crashlog if user selects NO.
+ Get APK from device will now open folder where APK is extracted automatically after extraction.
+ Crashlog window can now open folder directory with crashlog if user
selects NO.
+ Get APK from device will now open folder where APK is extracted
automatically after extraction.
+ Added timestamps to Dialogbox
+ Added pictures for all current titles.
-----BEGIN PGP SIGNATURE-----
@@ -173,7 +381,8 @@ Hash: SHA256
RSL 2.1.2
+ Added quick search (ctrl+f or click magnifying glass), Automatically selects whatever game it finds, user can press ENTER to start DL+Install
+ Added quick search (ctrl+f or click magnifying glass), Automatically
selects whatever game it finds, user can press ENTER to start DL+Install
= Fixed massive issues caused by accidental branch merge.
= UI Improvements
-----BEGIN PGP SIGNATURE-----
@@ -203,8 +412,10 @@ Hash: SHA256
RSL 2.1.1
+ Added optional Wake on Wifi setting so Wireless ADB will still connect as long as device is not powered off or dead.
+ RSL will now automatically choose any Oculus device over devices made by other manufacturers if more than one ADB device is present.
+ Added optional Wake on Wifi setting so Wireless ADB will still
connect as long as device is not powered off or dead.
+ RSL will now automatically choose any Oculus device over devices
made by other manufacturers if more than one ADB device is present.
= Fixed Download+Install QUSettings application if QUSettings are set.
= Fixed Pull APK from device.
-----BEGIN PGP SIGNATURE-----
@@ -229,7 +440,8 @@ Hash: SHA256
Update RSL2.1HF5
Fixed ADB path for usernames containing spaces. ADB now located at c:\RSL\VersionNumber\ADB
Fixed ADB path for usernames containing spaces. ADB now located at
c:\RSL\VersionNumber\ADB
- -HarryEffingPotter-
-----BEGIN PGP SIGNATURE-----
@@ -255,7 +467,8 @@ Hash: SHA256
RSL 2.1HF4
= Moved ADB files to AppData\Roaming\RSL to fix compatibility issues across the board.
= Moved ADB files to AppData\Roaming\RSL to fix compatibility
issues across the board.
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmDa9rQACgkQx/Rql1Vo
@@ -279,7 +492,9 @@ Hash: SHA256
RSL 2.1HF3
= Fixed QUSettings not working issue.(unused fields in QUSettings MUST have 0's in them or it will not work, reset/clear all fields button now reflect this.)
= Fixed QUSettings not working issue.(unused fields in QUSettings
MUST have 0's in them or it will not work, reset/clear all
fields button now reflect this.)
= Fixed Uninstall auto-save-backup
= Fixed Install.txt automation messages.
-----BEGIN PGP SIGNATURE-----
@@ -311,16 +526,42 @@ v2.1
+ Backups are now stored in Documents\Rookie Backups\(BackupDate) folder.
+ 404 error fixed.
+ If installing an app that has a different patching method or signature than the previous version did user will now recieve a prompt for the option to upgrade which will backup savedata then uninstall and reinstall the app. NOTE: Not all apps allow backup of savedata.
+ Refresh updates list now loads much faster and refreshes the main update list.
+ If installing an app that has a different patching method or
signature than the previous version did user will now recieve
a prompt forthe option to upgrade which will backup savedata then
uninstall and reinstall the app. NOTE: Not all apps allow backup of
savedata.
+ Refresh updates list now loads much faster and refreshes the main update
list.
+ Added Wireless ADB functionality.
+ Added Enable Wireless ADB and Remove Wireless ADB buttons to main menu.
+ Added ">" symbols on collapsible and expandable menu items to let user know they can be expanded/collapsed.
+ "Hand/Finger pointer" symbol added above clickable main menu buttons to let user know they're clickable.
+ Added logic to allow entire list to load and compare installed versions with Rclone versions before populating and added informative text of this step to the bottom/title bar.
+ Added QU Settings for their newest patch method. Can be found under Quest Options, this will allow you to change settings for any games that include "-QU" in the version/filename. Click Enable QU Settings box to reveal the options.
DETAILS: Clicking enable again will remove the settings file, if you re-enable you MUST click apply again for it to work. QU Settings are applied automatically when any games are Downloaded/Installed via Rookie as long as the custom settings been enabled and applied in the Quest Options menu.Once applied they can also be added to any already installed titles by selecting the game you wish to add them to in the menu at the top of RSL in the main window then(the same list used to uninstall games) then clicking on Install QU Setting. To remove a setting for a game select it from the same menu and click Remove QU Setting. If you click Delete Custom Settings in Quest Options it will not delete settings for any games installed while it was enabled, you must do this with the previously mentioned Remove QU Setting option. Clear Settings just clears the values entered in the fields. Settings entered into those fields will persist between instances of RSL.
+ Public key for HarryEffingPotter(Rookie contributor/VRPE dev) added to Rookie directory.
+ Added ">" symbols on collapsible and expandable menu items to let user
know they can be expanded/collapsed.
+ "Hand/Finger pointer" symbol added above clickable main menu buttons to
let user know they're clickable.
+ Added logic to allow entire list to load and compare installed versions
with Rclone versions before populating and added informative text of this
step to the bottom/title bar.
+ Added QU Settings for their newest patch method. Can be found under
Quest Options, this will allow you to change settings for any games that
include "-QU" in the version/filename.
Click Enable QU Settings box to reveal the options.
DETAILS: Clicking enable again will remove the settings file, if you
re-enable you MUST click apply again for it to work. QU Settings are
applied automatically when any games are Downloaded/Installed via Rookie
as long as the custom settings been enabled and applied in the Quest
Options menu.Once applied they can also be added to any already installed
titles by selecting the game you wish to add them to in the menu at the top
of RSL in the main window then(the same list used to uninstall games) then
clicking onInstall QU Setting.
To remove a setting for a game select it from the same menu and click Remove
QU Setting. If you click Delete Custom Settings in Quest Options it will not
delete settings for any games installed while it was enabled, you must do
this with the previously mentioned RemoveQU Setting option. Clear Settings
just clears the values entered in the fields. Settings entered into those
fields will persist between instances of RSL.
+ Public key for HarryEffingPotter(Rookie contributor/VRPE dev) added to
Rookie directory.
= Fixed Install.txt automation to make Manual installs automatic.
- -HarryEffingPotter-
@@ -328,9 +569,11 @@ DETAILS: Clicking enable again will remove the settings file, if you re-enable y
Released: May 29th 2021
Public key for Rookie and HarryEffingPotter included in Rookie directory along with Checksum(can be run with QuickSFV.exe)
Public key for Rookie and HarryEffingPotter included in Rookie
directory along with Checksum(can be run with QuickSFV.exe)
THIS SOFTWARE IS FREE TO USE, IF YOU PAID FOR IT YOU WERE RIPPED OFF. We can be found on Telegram @ t.me/VRPirates.
THIS SOFTWARE IS FREE TO USE, IF YOU PAID FOR IT YOU WERE
RIPPED OFF. We can be found on Telegram @ t.me/VRPirates.
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmCyMHUACgkQx/Rql1Vo
@@ -354,11 +597,14 @@ Hash: SHA256
!!!IMPORTANT!!!
THIS VERSION IS WORK IN PROGRESS DUE TO LACK OF TESTERS!
Due to how the rclone config works now, if you used Rookie's Sideloader with a custom config
Make sure to redownload the entire rclone folder from the config provider!
Due to how the rclone config works now, if you used Rookie's
Sideloader with a custom config. Make sure to redownload the entire
rclone folder from the config provider!
I forgot, adb usb isn't called at start so the last changelog was wrong
Also this was the first release to use GIT and sideloader had broken updates so thats why the huge ammount of commits in such a short time sorry
I forgot, adb usb isn't called at start so the last changelog
was wrong. Also this was the first release to use GIT and
sideloader had broken updatesso thats why the huge ammount of
commits in such a short time sorry
v2.0-WIP-SU1
@@ -373,11 +619,15 @@ VT: https://bit.ly/3uPda5K
MD5 Checksum: 4259AD179E8C56478828FFFC38586BE0
SHA-1 Checksum: 44C1754D0CD0B1677A73BE5A10B05E02BC85E6B7
SHA-256 Checksum: 8D6CCFB6DDA656BB3FEB1EBAB4F3BA9D9A0D431398A80F23F8C1E097DEB8B827
SHA-512 Checksum: B6DF140C00E3761698C604BCD1A8835C6B2EB5BE18477C3BB69900E2353EE42C196A475E81A95D495C346C35CD2100148FA5E5A0C03D3FEBCB4F469E7E8C6EBF
SHA-256 Checksum: 8D6CCFB6DDA656BB3FEB1EBAB4F3BA9D9A0D431398A80F
23F8C1E097DEB8B827
SHA-512 Checksum: B6DF140C00E3761698C604BCD1A8835C6B2EB5BE18477C
3BB69900E2353EE4
2C196A475E81A95D495C346C35CD2100148FA5E5A0C03D3FEBCB4F469E7E8C6EBF
You can always get my public key from miligra.me/pgp
You can verify the signed message using kleopatra for windows or dark.fail/pgp
You can verify the signed message using kleopatra for windows or
dark.fail/pgp
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEG9eYw4mQVDjvGf4lvrtJUNxETxMFAmB3+4UACgkQvrtJUNxE
@@ -401,8 +651,9 @@ Hash: SHA256
!!!IMPORTANT!!!
THIS VERSION IS WORK IN PROGRESS DUE TO LACK OF TESTERS!
Due to how the rclone config works now, if you used Rookie's Sideloader with a custom config
Make sure to redownload the entire rclone folder from the config provider!
Due to how the rclone config works now, if you used Rookie's
Sideloader with a custom config. Make sure to redownload the
entire rclone folder from the config provider!
v2.0-WIP
@@ -411,13 +662,18 @@ Changes
+ Added dependency check for spoofer
+ Games now can have images
+ Replaced the gamescombo box with a listview
+ Listview marks already installed games with green and outdated ones with yellow
+ Listview marks already installed games with green and
outdated ones with yellow
+ Sideloader should be faster now
+ Reduced sideloader size
+ Installing games and copying obbs tries to wake the device first
+ Installing games and copying obbs tries to wake the
device first
+ Sideloader calls adb usb on start now
+ ADB Output now is a proper object containing strings for stdout and stderr, handling will be easier now
+ Changed spoof on rclone install to resign, allowing users to easily update games from now on!
+ ADB Output now is a proper object containing strings for
stdout and stderr,
handling will be easier now
+ Changed spoof on rclone install to resign, allowing users
to easily update games from now on!
//You can still use the spoof button manually
= Fixed UI not starting for some people
= Refreshing mirrors now deosn't change the selected mirror
@@ -435,11 +691,15 @@ VT: https://bit.ly/3a3LvGg
MD5 Checksum: 597D4AC957F69D5B1860D14D15DD3904
SHA-1 Checksum: EC78E4416D5222E507F46499B62A1D16880F84DF
SHA-256 Checksum: B68EE3B95CA531CA4678FEAAFD13F75A69D4495879536A9D04094ECFFEEC86EA
SHA-512 Checksum: D98F319986179B362D0F4C4E092FE6AF4ED8D1FD5445667F68280B43BF49C9DB7AC3B0F49690644CB46A7A391EDF36E82A8BCF7C52770498E6CACEA52D44EA4D
SHA-256 Checksum: B68EE3B95CA531CA4678FEAAFD13F75A69D4495879536A
9D04094ECFFEEC86EA
SHA-512 Checksum: D98F319986179B362D0F4C4E092FE6AF4ED8D1FD54456
67F68280B43BF49C9D
B7AC3B0F49690644CB46A7A391EDF36E82A8BCF7C52770498E6CACEA52D44EA4D
You can always get my public key from rookie.wtf/pgp.txt
You can verify the signed message using kleopatra for windows or dark.fail/pgp
You can verify the signed message using kleopatra for windows
or dark.fail/pgp
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEG9eYw4mQVDjvGf4lvrtJUNxETxMFAmB1rNsACgkQvrtJUNxE
@@ -474,11 +734,15 @@ VT: https://bit.ly/3nDUMcx
MD5 Checksum: 6DA8ADBE4447A809C598379E73DC7F77
SHA-1 Checksum: 924220FE8877174CCB9732F1F99B759DD6749102
SHA-256 Checksum: 0405C389A7D84CAC0D9081BDE10D010300822B10EBC2FF94C501EC740C8CFA40
SHA-512 Checksum: E8C3A15257C30278CEBC46507B1F6049FFB5AC0D6E4FBB73E1776537F80CBEA95C8C81A3F3259F8AEEDE276EBF6D50F6945622403E9D80B5E9E0F47B050BBEA9
SHA-256 Checksum: 0405C389A7D84CAC0D9081BDE10D010300822B10EBC2FF
94C501EC740C8CFA40
SHA-512 Checksum: E8C3A15257C30278CEBC46507B1F6049FFB5AC0D6E4FB
B73E1776537F80CBEA9
5C8C81A3F3259F8AEEDE276EBF6D50F6945622403E9D80B5E9E0F47B050BBEA9
You can always get my public key from rookie.wtf/pgp.txt
You can verify the signed message using kleopatra for windows or dark.fail/pgp
You can verify the signed message using kleopatra for windows or
dark.fail/pgp
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEG9eYw4mQVDjvGf4lvrtJUNxETxMFAl+2aycACgkQvrtJUNxE
@@ -501,10 +765,13 @@ HL+SrazP9o8ut2L85uBqCjWHPfgVaBaaQgk9FgZe0WQoS06fdeU=
Hash: SHA256
v1.17
Please manually update to this version, as it fixes automatic updates that were broken since 1.15
Please manually update to this version, as it fixes automatic
updates that were
broken since 1.15
Changes
+ Better game installation => no need for manual installation of games anymore
+ Better game installation => no need for manual installation
of games anymore
+ Added theme changer back and updated it
= Fixed updates
= Updated quest options
@@ -515,10 +782,14 @@ VT: https://bit.ly/3lwztcn
MD5 Checksum: CC7BF16A3D687C21208E9E986D720CAE
SHA-1 Checksum: CE0C71B4097068E84FA6FC65F4AFE69CBC79AA29
SHA-256 Checksum: D9393C28376DDE1D0582BCF939D1414879EDE6772CE82F83F54C0EA0F239B2F0
SHA-512 Checksum: 326C7A0177E9B8BCFA10CB3B8FAEA025F9C45C599DE5D46CA06DFEE427351F3AE88371C5A0827DEADF7D3F459052C421A145AA5581FE3C4BD2EFAD33BCFFC37B
SHA-256 Checksum: D9393C28376DDE1D0582BCF939D1414879EDE6772CE82F
83F54C0EA0F239B2F0
SHA-512 Checksum: 326C7A0177E9B8BCFA10CB3B8FAEA025F9C45C599DE5D4
6CA06DFEE427351F3AE88371C5A0827DEADF7D3F459052C421A145AA5581FE3C
4BD2EFAD33BCFFC37B
You can always get my public key from rookie.wtf/pgp.txt
You can verify the signed message using kleopatra for windows or dark.fail/pgp
You can verify the signed message using kleopatra for windows or
dark.fail/pgp
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEG9eYw4mQVDjvGf4lvrtJUNxETxMFAl+wFCUACgkQvrtJUNxE
@@ -553,11 +824,15 @@ VT: https://bit.ly/2K4Y5Lv
MD5 Checksum: 29978E435BF02865CE61EF6279FB42ED
SHA-1 Checksum: 2E47CFDE7549D088A102F021657E9CD6859EAC47
SHA-256 Checksum: 50057AC0DA315C492C9C45B5801AE99E65B812F5BC18E23622CCAF5FBC48760A
SHA-512 Checksum: E485ADB6088C1F7DC34B65B57A9077E876D3D576D48CCED1FCA691A113CA5F6D0F8A0D31C6C848B6719FF18B7D4C5F829B9DAA8789EA6087F8B1D41005F87A48
SHA-256 Checksum: 50057AC0DA315C492C9C45B5801AE99E65B812F5BC18E23
622CCAF5FBC48760A
SHA-512 Checksum: E485ADB6088C1F7DC34B65B57A9077E876D3D576D48CCED1
FCA691A113CA5F6D0
F8A0D31C6C848B6719FF18B7D4C5F829B9DAA8789EA6087F8B1D41005F87A48
You can always get my public key from rookie.wtf/pgp.txt
You can verify the signed message using kleopatra for windows or dark.fail/pgp
You can verify the signed message using kleopatra for windows or
dark.fail/pgp
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEG9eYw4mQVDjvGf4lvrtJUNxETxMFAl+tHY0ACgkQvrtJUNxE
@@ -590,11 +865,15 @@ VT: https://bit.ly/2GDYWRU
MD5 Checksum: F0D51FEC94F8D266390E61E89E6A2EE0
SHA-1 Checksum: 4FB43CFA6021B8360A23858169FAF15468B68EDF
SHA-256 Checksum: CBE414D9A283871099057EE5D8E56AF408996AE9C996C31F92C4DAE16D48B024
SHA-512 Checksum: F16A6B29ECABBB16D25B7F7FC52CB15AE4930B2B17ABAC791BF1F331270F40B047094FDEAF1EF834E72E26AA3A6762AF8BE13EBCB735EB1C1009F884E338D9DE
SHA-256 Checksum: CBE414D9A283871099057EE5D8E56AF408996AE9C996C31F
92C4DAE16D48B024
SHA-512 Checksum: F16A6B29ECABBB16D25B7F7FC52CB15AE4930B2B17ABAC79
1BF1F331270F40B047
094FDEAF1EF834E72E26AA3A6762AF8BE13EBCB735EB1C1009F884E338D9DE
You can always get my public key from rookie.wtf/pgp.txt
You can verify the signed message using kleopatra for windows or dark.fail/pgp
You can verify the signed message using kleopatra for windows or
dark.fail/pgp
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEG9eYw4mQVDjvGf4lvrtJUNxETxMFAl+lfEkACgkQvrtJUNxE
@@ -632,11 +911,15 @@ VT: https://bit.ly/3kYCQsb
MD5 Checksum: 39BAB4CEE3D0E387E770BA35F4488C2F
SHA-1 Checksum: C6F311411408BCF5A55034E7A926EA385819F348
SHA-256 Checksum: 64640374EF39DD9CFC4A613A49888E3194994AA934C5E952174A2FCF533E2D19
SHA-512 Checksum: 22769280B732821539100BFA77C67141F271DB401DB3AFB28EF285E352659F9F45A90C8ABE1C0B829770C5AE580CA76A9208505888443C22EE82AAAE7035C6F7
SHA-256 Checksum: 64640374EF39DD9CFC4A613A49888E3194994AA934C5E952
174A2FCF533E2D19
SHA-512 Checksum: 22769280B732821539100BFA77C67141F271DB401DB3AFB2
8EF285E352659F9F45
A90C8ABE1C0B829770C5AE580CA76A9208505888443C22EE82AAAE7035C6F7
You can always get my public key from rookie.wtf/pgp.txt
You can verify the signed message using kleopatra for windows or dark.fail/pgp
You can verify the signed message using kleopatra for windows or
dark.fail/pgp
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEG9eYw4mQVDjvGf4lvrtJUNxETxMFAl+jJScACgkQvrtJUNxE
@@ -661,7 +944,8 @@ Hash: SHA256
v1.14SU1
Changes
+ Quota errors now will try to redownload the game from another mirror
+ Quota errors now will try to redownload the game from another
mirror
= Only showing mirror remotes for apps
// Will fix device storage when I get my quest 2 and can debug adb
@@ -671,11 +955,15 @@ VT: https://bit.ly/3kcG62A
MD5 Checksum: 2A30E5F3DB785DC8104A2AA55A83CF53
SHA-1 Checksum: 8376E5971FC4F60995A1125DD9344E52135DB4F7
SHA-256 Checksum: FD5C74067BA00561A540DE5A4F49FA63B99C9520435A51487F997AEC569E9659
SHA-512 Checksum: 6188D6306CA2A3F25DE08E19D1F20046774F7AA30BD745ED24FC7E53126DF3950211B599E3D774F540A6C1DEC177A895FAE70FB564B6AE96F5F10ABDCB9021C1
SHA-256 Checksum: FD5C74067BA00561A540DE5A4F49FA63B99C9520435A51487F
997AEC569E9659
SHA-512 Checksum: 6188D6306CA2A3F25DE08E19D1F20046774F7AA30BD745ED2
4FC7E53126DF3950
211B599E3D774F540A6C1DEC177A895FAE70FB564B6AE96F5F10ABDCB9021C1
You can always get my public key from rookie.wtf/pgp.txt
You can verify the signed message using kleopatra for windows or dark.fail/pgp
You can verify the signed message using kleopatra for windows or
dark.fail/pgp
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEG9eYw4mQVDjvGf4lvrtJUNxETxMFAl+MCbMACgkQvrtJUNxE
@@ -711,11 +999,15 @@ VT: https://bit.ly/3j8kCm8
MD5 Checksum: B862B807462CE35CC930C2B1118D5692
SHA-1 Checksum: F52C8630C89CAEDB2E90A857E494DE00B137712D
SHA-256 Checksum: 3DDFA2B4CCFC0E9F6F86E8A74E6D3511B9C643F4C4AF19D3878B8704FA360558
SHA-512 Checksum: 16A022D8A4D235D7C537D9F01FE7C5F964A67A3A8CD68B3DC17AF08D94837DAC6CE0C20557D029DC169E5616B36C2A4C36B1647CE0DF930C7694F3FEC3430E70
SHA-256 Checksum: 3DDFA2B4CCFC0E9F6F86E8A74E6D3511B9C643F4C4AF19D38
78B8704FA360558
SHA-512 Checksum: 16A022D8A4D235D7C537D9F01FE7C5F964A67A3A8CD68B3DC1
7AF08D94837DAC
6CE0C20557D029DC169E5616B36C2A4C36B1647CE0DF930C7694F3FEC3430E70
You can always get my public key from rookie.wtf/pgp.txt
You can verify the signed message using kleopatra for windows or dark.fail/pgp
You can verify the signed message using kleopatra for windows or
dark.fail/pgp
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEG9eYw4mQVDjvGf4lvrtJUNxETxMFAl+KrhQACgkQvrtJUNxE
@@ -740,7 +1032,8 @@ Hash: SHA256
New version v1.13 Released
Changes
+ Pgp messages will be available now for every update, so you can verify updates easily
+ Pgp messages will be available now for every update, so you can
verify updates easily
= Fixed some bugs like the rclone suicide
- Removed china detection
@@ -748,11 +1041,15 @@ Date 9/10/2020
MD5 Checksum: 3834485C5AF611523460E639969284F3
SHA-1 Checksum: DAF556D34F80FDE6A6A3D8F338381030B2B19E44
SHA-256 Checksum: 063FABA6A76A98AB862BBBF6F3348F176F66FD4932075E761A5FCAA85785EE4B
SHA-512 Checksum: CC743BD95826664535239BB665934E88A25CC948B95E4A3E8B34379C1E8DEB8FED05EAD87428F4B85D5841ED9101F38E4E3DAFB0EAF3CD2F2E4314B62356104D
SHA-256 Checksum: 063FABA6A76A98AB862BBBF6F3348F176F66FD4932075E761
A5FCAA85785EE4B
SHA-512 Checksum: CC743BD95826664535239BB665934E88A25CC948B95E4A3E8
B34379C1E8DEB8F
ED05EAD87428F4B85D5841ED9101F38E4E3DAFB0EAF3CD2F2E4314B62356104D
You can always get my public key from rookie.wtf/pgp.txt
You can verify the signed message using kleopatra for windows or dark.fail/pgp
You can verify the signed message using kleopatra for windows or
dark.fail/pgp
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEG9eYw4mQVDjvGf4lvrtJUNxETxMFAl9aBpMACgkQvrtJUNxE
@@ -771,7 +1068,8 @@ DFKYJpBgATHdRTwt7/zZwJCBq0ONheA/6+6VYj8x8Q5rqbiDDdc=
-----END PGP SIGNATURE-----
1.11HF1
= Fixed some crashes that occured when a unauthorized device was used with the sideloader
= Fixed some crashes that occured when a unauthorized device was
used with the sideloader
1.11
+ Added support for multiple devices
@@ -798,7 +1096,8 @@ DFKYJpBgATHdRTwt7/zZwJCBq0ONheA/6+6VYj8x8Q5rqbiDDdc=
+ Added a setting for disabling user.json push
1.8SU2
= Install game now won't throw an exception when a game isn't selected
= Install game now won't throw an exception when a game isn't
selected
1.8SU1
+ Added debug logs for rclone
@@ -815,7 +1114,8 @@ DFKYJpBgATHdRTwt7/zZwJCBq0ONheA/6+6VYj8x8Q5rqbiDDdc=
1.7
+ Removed some freezes
+ Sideloader kills rclone on start and on close if it's open so you dont waste bandwith
+ Sideloader kills rclone on start and on close if it's open
so you dont waste bandwith
+ Updating rclone config now does a hash check first
+ Refresh storage after game install and on game uninstall
@@ -823,7 +1123,12 @@ DFKYJpBgATHdRTwt7/zZwJCBq0ONheA/6+6VYj8x8Q5rqbiDDdc=
+ Disk space label and check
+ Checks game size before download
= Download and install game button outputs adb log now
- Launch package name button and textbox
- Launch package name button and
1.5
+ Added ETA, based on CURRENT DOWNLOAD SPEED NOT DELTA OF IT
@@ -832,7 +1137,8 @@ DFKYJpBgATHdRTwt7/zZwJCBq0ONheA/6+6VYj8x8Q5rqbiDDdc=
+ Added some tooltips
1.4
+ Donators can now change the speed of the donate button color change (even disable)
+ Donators can now change the speed of the donate button color
change (even disable)
+ Auto update for the rclone config
+ Theme export and import buttons (by gotard)
@@ -862,9 +1168,11 @@ DFKYJpBgATHdRTwt7/zZwJCBq0ONheA/6+6VYj8x8Q5rqbiDDdc=
+ Added games auto download
+ Added auto troubleshoot
+ Every app installed will have all perms granted
+ Displays apps for games instead of package names if you have rclone set up
+ Displays apps for games instead of package names if you
have rclone set up
+ Uninstall app now will also delete its obb folder
//For auto download you need an rclone config and rclone to be set up correctly
//For auto download you need an rclone config and rclone
to be set up correctly
0.15HF1
+ Added list apps button back
@@ -873,7 +1181,8 @@ DFKYJpBgATHdRTwt7/zZwJCBq0ONheA/6+6VYj8x8Q5rqbiDDdc=
0.15
= MASSIVE UI REDESIGN
+ Added toggle for tor/clearnet
+ Added download games through tor but still waiting for someone to help me host the files
+ Added download games through tor but still waiting for
someone to help me host the files
+ Added download with progress
= Changed adb sideload command to allow downgrades too
- Removed perms stuff, was too buggy
@@ -885,7 +1194,8 @@ DFKYJpBgATHdRTwt7/zZwJCBq0ONheA/6+6VYj8x8Q5rqbiDDdc=
0.14
+ Check file hash button
+ Added first run check (will maybe be used to create user.json files)
+ Added first run check (will maybe be used to create user.json
files)
+ Added drag and drop for apk and obb files
+ Progress bar now works for every adb command
= Moved buttons
@@ -903,7 +1213,8 @@ DFKYJpBgATHdRTwt7/zZwJCBq0ONheA/6+6VYj8x8Q5rqbiDDdc=
+ Added a new user.json
= Fixed crash on some systems (PerformanceCounter)
= Fixed crash because of file name inconsistency
- Removed performance counters because they made the software not work for some people
- Removed performance counters because they made the software
not work for some people
0.11
+ Changed normal message boxes to flexible ones
@@ -950,7 +1261,8 @@ DFKYJpBgATHdRTwt7/zZwJCBq0ONheA/6+6VYj8x8Q5rqbiDDdc=
0.5
- Removed Flash Firmware
= Redesigned UI
= Reworked RunAdbCommand function (now it will be possible to do stuff I wasnt able to do before)
= Reworked RunAdbCommand function (now it will be possible to do stuff
I wasnt able to do before)
= Replaced Ui Buttons, still needs work
+ Added List apk button
+ Added List apk combo box
@@ -966,7 +1278,8 @@ DFKYJpBgATHdRTwt7/zZwJCBq0ONheA/6+6VYj8x8Q5rqbiDDdc=
+ Added recover and backup app data
- Removed Select APK and Select OBB Buttons
- Removed tooltips from removed buttons
+ Sideload APK and Copy Obb buttons now also make you select the file/folder
+ Sideload APK and Copy Obb buttons now also make you select the
file/folder
+ Improved firmware button
0.2

View File

@@ -1 +1 @@
2.2.1
2.4.7