Compare commits

...

2 Commits

Author SHA1 Message Date
Harry Fn Potter
111d3a7176 -----BEGIN PGP SIGNED MESSAGE-----
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 all issues with Install.txt path.
= Clicking out of search box now closes it.
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmDsFZ8ACgkQx/Rql1Vo
czcwJg/+PFiXfh6PPZNIRf2Zeht7WN8oxuUFV907KnD5+gKD0rzNd1NzgrcPOgAh
/oJakvY6ryLyaopJFZ8bm7++tQ3w6mbnzPaGweNoOF7/oLDb9NKVlK5/VjA3JPPN
QtOebRgBsigoRGGTq0s7ZRZV99vtSm2R1+1z9qlEu5Fm2hEiIggLvSBdGWDhbGnZ
jnvAZixeYgR+R6x4MZTsDao+qIYMio7heiVdN03gQ4hAaPbZ/I6s3cS+K33k02Nz
IEATqkwoLOevmN/D773A0cMzh/ZQWs557E3aKtwB+EHo/0ucCk0WaMSt4WdH8Qqe
WWF6+UT8FEEN2M76SQrg80xBj3QxzfIi92c231rVvtHMiVn5qUhTrDYb2wqx7J99
cJeMgANBmWSBZRBNW7jwhAxUVXE9vE8eqBza9MarXbJaLtq3Mf0ECLWvFPllA8dU
lnBcdSuTESvZkBAokkCwEJOb7sootBpEz5BZtE268mZEfsHUGWo3/VZDrJ7lLXJW
mEE2aCcHpNWysa9CsSee/QWNgLH2v+9PM3r/1SJyQ23C2hwyQI+F2lkch8Ar5Qfn
YxMWnhAcYXTRtcxY0s7xuhpUr/TGc6m9QY6NeVYMvb3g1gbmGOyyN/MELNOkEF/l
FXnrY4AfaNTs6EL6/id/viGcHc1MnnjgzlTNg5rgoxtFrHdVwP4=
=o0TQ
-----END PGP SIGNATURE-----
2021-07-12 06:17:21 -04:00
Harry Fn Potter
5e235c5125 Search will now select games at bottom of list too.
Added hidden shortcut CTRL+P which will turn on a property that copies the packagename of selected games to the clipboard.
2021-07-10 13:06:33 -04:00
13 changed files with 413 additions and 132 deletions

23
ADB.cs
View File

@@ -23,8 +23,11 @@ namespace AndroidSideloader
Properties.Settings.Default.Save();
if (DeviceID.Length > 1)
command = $" -s {DeviceID} {command}";
Logger.Log($"Running command {command}");
{
command = $" -s {DeviceID} {command}";
}
if (!command.Contains("dumpsys") && !command.Contains("shell pm list packages"))
Logger.Log($"Running command {command}");
adb.StartInfo.FileName = adbFilePath;
adb.StartInfo.Arguments = command;
adb.StartInfo.RedirectStandardError = true;
@@ -66,11 +69,12 @@ namespace AndroidSideloader
{
MessageBox.Show("There is not enough room on your device to install this package. Please clear AT LEAST 2x the amount of the app you are trying to install.");
}
if (!output.Contains("version"))
Logger.Log(output);
Logger.Log(error);
return new ProcessOutput(output, error);
}
public static ProcessOutput RunAdbCommandToStringWOADB(string result, string file)
public static ProcessOutput RunAdbCommandToStringWOADB(string result, string path)
{
string command = result;
Properties.Settings.Default.ADBFolder = adbFolderPath;
@@ -87,7 +91,7 @@ namespace AndroidSideloader
adb.StartInfo.RedirectStandardOutput = true;
adb.StartInfo.CreateNoWindow = true;
adb.StartInfo.UseShellExecute = false;
adb.StartInfo.WorkingDirectory = Path.GetDirectoryName(file);
adb.StartInfo.WorkingDirectory = Path.GetDirectoryName(path);
adb.Start();
adb.StandardInput.WriteLine(command);
adb.StandardInput.Flush();
@@ -122,7 +126,7 @@ namespace AndroidSideloader
Logger.Log(error);
return new ProcessOutput(output, error);
}
public static ProcessOutput RunCommandToString(string result, string path = "", string file = "")
public static ProcessOutput RunCommandToString(string result, string path)
{
string command = result;
Properties.Settings.Default.ADBFolder = adbFolderPath;
@@ -230,8 +234,7 @@ namespace AndroidSideloader
public static void WakeDevice()
{
RunAdbCommandToString("shell input keyevent KEYCODE_WAKEUP");
string devicesout = RunAdbCommandToString("devices").Output;
string devicesout = RunAdbCommandToString("shell input keyevent KEYCODE_WAKEUP").Output;
if (!devicesout.Contains("found"))
{
if (Properties.Settings.Default.IPAddress.Contains("connect"))
@@ -240,7 +243,7 @@ namespace AndroidSideloader
RunAdbCommandToString(Properties.Settings.Default.IPAddress);
string response = RunAdbCommandToString(Properties.Settings.Default.IPAddress).Output;
if (response.Contains("cannot"))
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);
if (dialogResult == DialogResult.Cancel)
@@ -328,7 +331,7 @@ namespace AndroidSideloader
WakeDevice();
ProcessOutput ret = new ProcessOutput();
Program.form.ChangeTitle($"Sideloading {path}");
Program.form.ChangeTitle($"Sideloading {Path.GetFileName(path)}");
ret += RunAdbCommandToString($"install -g -r \"{path}\"");
string out2 = ret.Output + ret.Error;
if (out2.Contains("failed"))
@@ -413,7 +416,7 @@ namespace AndroidSideloader
public static ProcessOutput CopyOBB(string path)
{
WakeDevice();
if (SideloaderUtilities.CheckFolderIsObb(path))
if (path.Contains(".") && !path.Contains("_data"))
return RunAdbCommandToString($"push \"{path}\" /sdcard/Android/obb");
return new ProcessOutput();
}

View File

@@ -51,7 +51,7 @@
<value>White</value>
</setting>
<setting name="FontStyle" serializeAs="String">
<value>Microsoft Sans Serif, 9.5pt</value>
<value>Microsoft Sans Serif, 10pt, style=Bold</value>
</setting>
<setting name="BackPicturePath" serializeAs="String">
<value />
@@ -122,6 +122,15 @@
<setting name="CurrentGamename" serializeAs="String">
<value />
</setting>
<setting name="PackageNameToCB" serializeAs="String">
<value>False</value>
</setting>
<setting name="EnterKeyInstall" serializeAs="String">
<value>False</value>
</setting>
<setting name="DownUpHeld" serializeAs="String">
<value>False</value>
</setting>
</AndroidSideloader.Properties.Settings>
<AndroidADB.Sideloader.Properties.Settings>
<setting name="checkForUpdates" serializeAs="String">

151
MainForm.Designer.cs generated
View File

@@ -42,7 +42,6 @@
this.downloadInstallGameButton = new System.Windows.Forms.Button();
this.panel1 = new System.Windows.Forms.Panel();
this.downloadingLabel = new System.Windows.Forms.Label();
this.StorageLabel = new System.Windows.Forms.Label();
this.aboutBtn = new System.Windows.Forms.Button();
this.settingsButton = new System.Windows.Forms.Button();
this.otherContainer = new System.Windows.Forms.Panel();
@@ -86,6 +85,7 @@
this.label6 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
this.EnterInstallBox = new System.Windows.Forms.CheckBox();
this.panel1.SuspendLayout();
this.otherContainer.SuspendLayout();
this.backupContainer.SuspendLayout();
@@ -99,8 +99,7 @@
//
// m_combo
//
this.m_combo.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
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));
@@ -288,7 +287,7 @@
| System.Windows.Forms.AnchorStyles.Right)));
this.progressBar.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.progressBar.ForeColor = System.Drawing.Color.Purple;
this.progressBar.Location = new System.Drawing.Point(228, 500);
this.progressBar.Location = new System.Drawing.Point(228, 441);
this.progressBar.Name = "progressBar";
this.progressBar.Size = new System.Drawing.Size(367, 25);
this.progressBar.TabIndex = 7;
@@ -325,7 +324,7 @@
this.downloadInstallGameButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.downloadInstallGameButton.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.downloadInstallGameButton.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.downloadInstallGameButton.Location = new System.Drawing.Point(601, 504);
this.downloadInstallGameButton.Location = new System.Drawing.Point(601, 439);
this.downloadInstallGameButton.Name = "downloadInstallGameButton";
this.downloadInstallGameButton.Size = new System.Drawing.Size(371, 30);
this.downloadInstallGameButton.TabIndex = 8;
@@ -339,7 +338,6 @@
this.panel1.AutoScroll = true;
this.panel1.BackColor = global::AndroidSideloader.Properties.Settings.Default.ButtonColor;
this.panel1.Controls.Add(this.downloadingLabel);
this.panel1.Controls.Add(this.StorageLabel);
this.panel1.Controls.Add(this.aboutBtn);
this.panel1.Controls.Add(this.settingsButton);
this.panel1.Controls.Add(this.otherContainer);
@@ -357,7 +355,7 @@
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Margin = new System.Windows.Forms.Padding(2);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(218, 775);
this.panel1.Size = new System.Drawing.Size(218, 721);
this.panel1.TabIndex = 73;
//
// downloadingLabel
@@ -366,23 +364,10 @@
this.downloadingLabel.BackColor = System.Drawing.SystemColors.WindowText;
this.downloadingLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F);
this.downloadingLabel.ForeColor = System.Drawing.SystemColors.Control;
this.downloadingLabel.Location = new System.Drawing.Point(12, 714);
this.downloadingLabel.Location = new System.Drawing.Point(-3, 688);
this.downloadingLabel.Name = "downloadingLabel";
this.downloadingLabel.Size = new System.Drawing.Size(98, 18);
this.downloadingLabel.Size = new System.Drawing.Size(0, 18);
this.downloadingLabel.TabIndex = 83;
this.downloadingLabel.Text = "Downloading:";
//
// StorageLabel
//
this.StorageLabel.AutoSize = true;
this.StorageLabel.BackColor = System.Drawing.SystemColors.WindowText;
this.StorageLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F);
this.StorageLabel.ForeColor = System.Drawing.SystemColors.Control;
this.StorageLabel.Location = new System.Drawing.Point(12, 636);
this.StorageLabel.Name = "StorageLabel";
this.StorageLabel.Size = new System.Drawing.Size(111, 18);
this.StorageLabel.TabIndex = 83;
this.StorageLabel.Text = "Device storage:";
//
// aboutBtn
//
@@ -719,10 +704,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(13, 654);
this.diskLabel.Location = new System.Drawing.Point(2, 638);
this.diskLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.diskLabel.Name = "diskLabel";
this.diskLabel.Size = new System.Drawing.Size(72, 16);
this.diskLabel.Size = new System.Drawing.Size(84, 17);
this.diskLabel.TabIndex = 7;
this.diskLabel.Text = "Disk Label";
//
@@ -733,10 +718,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(12, 733);
this.speedLabel.Location = new System.Drawing.Point(-3, 681);
this.speedLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.speedLabel.Name = "speedLabel";
this.speedLabel.Size = new System.Drawing.Size(135, 16);
this.speedLabel.Size = new System.Drawing.Size(159, 17);
this.speedLabel.TabIndex = 76;
this.speedLabel.Text = "DLS: Speed in MBPS";
//
@@ -747,10 +732,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(12, 751);
this.etaLabel.Location = new System.Drawing.Point(-3, 698);
this.etaLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.etaLabel.Name = "etaLabel";
this.etaLabel.Size = new System.Drawing.Size(131, 16);
this.etaLabel.Size = new System.Drawing.Size(157, 17);
this.etaLabel.TabIndex = 75;
this.etaLabel.Text = "ETA: HH:MM:SS Left";
//
@@ -763,7 +748,7 @@
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(287, 624);
this.freeDisclaimer.Location = new System.Drawing.Point(277, 554);
this.freeDisclaimer.Name = "freeDisclaimer";
this.freeDisclaimer.Size = new System.Drawing.Size(246, 40);
this.freeDisclaimer.TabIndex = 79;
@@ -784,17 +769,16 @@
this.gamesQueListBox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.gamesQueListBox.FormattingEnabled = true;
this.gamesQueListBox.ItemHeight = 16;
this.gamesQueListBox.Location = new System.Drawing.Point(601, 530);
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(372, 114);
this.gamesQueListBox.Size = new System.Drawing.Size(372, 130);
this.gamesQueListBox.TabIndex = 9;
this.gamesQueListBox.MouseClick += new System.Windows.Forms.MouseEventHandler(this.gamesQueListBox_MouseClick);
//
// devicesComboBox
//
this.devicesComboBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
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));
@@ -813,7 +797,7 @@
//
// remotesList
//
this.remotesList.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
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));
@@ -839,9 +823,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(234, 71);
this.gamesListView.Location = new System.Drawing.Point(227, 69);
this.gamesListView.Name = "gamesListView";
this.gamesListView.Size = new System.Drawing.Size(745, 423);
this.gamesListView.Size = new System.Drawing.Size(745, 366);
this.gamesListView.TabIndex = 6;
this.gamesListView.UseCompatibleStateImageBehavior = false;
this.gamesListView.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listView1_ColumnClick);
@@ -851,7 +835,9 @@
//
// searchTextBox
//
this.searchTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.searchTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.searchTextBox.BackColor = global::AndroidSideloader.Properties.Settings.Default.TextBoxColor;
this.searchTextBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.searchTextBox.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "TextBoxColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
@@ -859,9 +845,9 @@
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(481, 274);
this.searchTextBox.Location = new System.Drawing.Point(473, 250);
this.searchTextBox.Name = "searchTextBox";
this.searchTextBox.Size = new System.Drawing.Size(231, 22);
this.searchTextBox.Size = new System.Drawing.Size(231, 23);
this.searchTextBox.TabIndex = 5;
this.searchTextBox.Text = "Search";
this.searchTextBox.Visible = false;
@@ -877,15 +863,15 @@
this.gamesQueueLabel.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.gamesQueueLabel.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.gamesQueueLabel.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.gamesQueueLabel.Location = new System.Drawing.Point(597, 628);
this.gamesQueueLabel.Location = new System.Drawing.Point(597, 590);
this.gamesQueueLabel.Name = "gamesQueueLabel";
this.gamesQueueLabel.Size = new System.Drawing.Size(95, 16);
this.gamesQueueLabel.Size = new System.Drawing.Size(111, 17);
this.gamesQueueLabel.TabIndex = 86;
this.gamesQueueLabel.Text = "Games Queue";
//
// MountButton
//
this.MountButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
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;
@@ -911,7 +897,7 @@
this.ProgressText.BackColor = System.Drawing.Color.Transparent;
this.ProgressText.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.ProgressText.ForeColor = System.Drawing.Color.White;
this.ProgressText.Location = new System.Drawing.Point(225, 751);
this.ProgressText.Location = new System.Drawing.Point(225, 692);
this.ProgressText.Name = "ProgressText";
this.ProgressText.Size = new System.Drawing.Size(0, 18);
this.ProgressText.TabIndex = 88;
@@ -926,12 +912,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(601, 647);
this.notesRichTextBox.Location = new System.Drawing.Point(601, 610);
this.notesRichTextBox.Name = "notesRichTextBox";
this.notesRichTextBox.ReadOnly = true;
this.notesRichTextBox.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.Vertical;
this.notesRichTextBox.ShowSelectionMargin = true;
this.notesRichTextBox.Size = new System.Drawing.Size(371, 96);
this.notesRichTextBox.Size = new System.Drawing.Size(371, 79);
this.notesRichTextBox.TabIndex = 10;
this.notesRichTextBox.Text = "";
//
@@ -942,7 +928,7 @@
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(224, 606);
this.DragDropLbl.Location = new System.Drawing.Point(240, 543);
this.DragDropLbl.Name = "DragDropLbl";
this.DragDropLbl.Size = new System.Drawing.Size(320, 55);
this.DragDropLbl.TabIndex = 25;
@@ -957,9 +943,9 @@
this.label1.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.label1.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.label1.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
this.label1.Location = new System.Drawing.Point(598, 730);
this.label1.Location = new System.Drawing.Point(598, 677);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(81, 16);
this.label1.Size = new System.Drawing.Size(98, 17);
this.label1.TabIndex = 86;
this.label1.Text = "Install Notes";
//
@@ -975,39 +961,46 @@
this.pictureBox1.InitialImage = null;
this.pictureBox1.Location = new System.Drawing.Point(217, -2);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(764, 772);
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;
this.pictureBox1.Click += new System.EventHandler(this.pictureBox1_Click);
//
// label2
//
this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(45)))));
this.label2.Location = new System.Drawing.Point(460, 223);
this.label2.Location = new System.Drawing.Point(460, 193);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(271, 110);
this.label2.Size = new System.Drawing.Size(271, 120);
this.label2.TabIndex = 89;
this.label2.Visible = false;
//
// label3
//
this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
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(494, 231);
this.label3.Location = new System.Drawing.Point(509, 207);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(204, 34);
this.label3.Size = new System.Drawing.Size(170, 51);
this.label3.TabIndex = 90;
this.label3.Text = "Start typing to search.\r\nEsc = Close, Enter = Install\r\n";
this.label3.Text = "Start typing to search.\r\nPress ESC to close.\r\n\r\n";
this.label3.TextAlign = System.Drawing.ContentAlignment.TopCenter;
this.label3.Visible = false;
//
// label4
//
this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
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(531, 303);
this.label4.Location = new System.Drawing.Point(523, 280);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(132, 17);
this.label4.TabIndex = 90;
@@ -1017,20 +1010,22 @@
//
// 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(616, 15);
this.label5.Location = new System.Drawing.Point(692, 11);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(117, 17);
this.label5.Size = new System.Drawing.Size(99, 17);
this.label5.TabIndex = 90;
this.label5.Text = "Search app list";
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(767, 10);
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;
@@ -1038,8 +1033,9 @@
//
// pictureBox2
//
this.pictureBox2.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.pictureBox2.Image = global::AndroidSideloader.Properties.Resources.SearchGlass;
this.pictureBox2.Location = new System.Drawing.Point(666, 41);
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;
@@ -1050,7 +1046,7 @@
//
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(228, 529);
this.gamesPictureBox.Location = new System.Drawing.Point(227, 472);
this.gamesPictureBox.Name = "gamesPictureBox";
this.gamesPictureBox.Size = new System.Drawing.Size(367, 214);
this.gamesPictureBox.TabIndex = 84;
@@ -1058,8 +1054,9 @@
//
// pictureBox4
//
this.pictureBox4.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.pictureBox4.Image = global::AndroidSideloader.Properties.Resources.greenkey;
this.pictureBox4.Location = new System.Drawing.Point(767, 39);
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;
@@ -1067,10 +1064,11 @@
//
// label6
//
this.label6.Anchor = System.Windows.Forms.AnchorStyles.Top;
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(792, 12);
this.label6.Location = new System.Drawing.Point(828, 12);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(145, 17);
this.label6.TabIndex = 90;
@@ -1079,10 +1077,11 @@
//
// label7
//
this.label7.Anchor = System.Windows.Forms.AnchorStyles.Top;
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(792, 41);
this.label7.Location = new System.Drawing.Point(828, 41);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(98, 17);
this.label7.TabIndex = 90;
@@ -1091,6 +1090,7 @@
//
// 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;
@@ -1101,13 +1101,31 @@
this.label8.Text = "Mirror #";
this.label8.TextAlign = System.Drawing.ContentAlignment.TopCenter;
//
// EnterInstallBox
//
this.EnterInstallBox.AutoSize = true;
this.EnterInstallBox.CheckAlign = System.Drawing.ContentAlignment.BottomCenter;
this.EnterInstallBox.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.EnterInstallBox.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
this.EnterInstallBox.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.EnterInstallBox.Location = new System.Drawing.Point(593, 7);
this.EnterInstallBox.Name = "EnterInstallBox";
this.EnterInstallBox.Size = new System.Drawing.Size(90, 52);
this.EnterInstallBox.TabIndex = 93;
this.EnterInstallBox.Text = " Install w/ \r\n Enter Key";
this.EnterInstallBox.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.EnterInstallBox.UseVisualStyleBackColor = true;
this.EnterInstallBox.CheckedChanged += new System.EventHandler(this.EnterInstallBox_CheckedChanged);
//
// MainForm
//
this.AllowDrop = true;
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(980, 775);
this.ClientSize = new System.Drawing.Size(980, 721);
this.Controls.Add(this.EnterInstallBox);
this.Controls.Add(this.ProgressText);
this.Controls.Add(this.pictureBox4);
this.Controls.Add(this.pictureBox3);
this.Controls.Add(this.pictureBox2);
@@ -1132,7 +1150,6 @@
this.Controls.Add(this.progressBar);
this.Controls.Add(this.m_combo);
this.Controls.Add(this.notesRichTextBox);
this.Controls.Add(this.ProgressText);
this.Controls.Add(this.label2);
this.Controls.Add(this.gamesListView);
this.Controls.Add(this.pictureBox1);
@@ -1203,7 +1220,6 @@
private System.Windows.Forms.Button UpdateGamesButton;
private System.Windows.Forms.Label gamesQueueLabel;
private System.Windows.Forms.Button MountButton;
private System.Windows.Forms.Label StorageLabel;
private System.Windows.Forms.Label ProgressText;
private System.Windows.Forms.Label downloadingLabel;
private System.Windows.Forms.RichTextBox notesRichTextBox;
@@ -1222,6 +1238,7 @@
private System.Windows.Forms.Label label6;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.Label label8;
private System.Windows.Forms.CheckBox EnterInstallBox;
}
}

View File

@@ -27,6 +27,7 @@ namespace AndroidSideloader
public static bool debugMode = true;
public bool DeviceConnected = false;
#else
public bool keyheld;
public static bool debugMode = false;
public bool DeviceConnected = false;
#endif
@@ -37,10 +38,15 @@ namespace AndroidSideloader
{
InitializeComponent();
System.Windows.Forms.Timer t = new System.Windows.Forms.Timer();
t.Interval = 840000; // 14 mins between wakeup commands
t.Tick += new EventHandler(timer_Tick);
t.Start();
t.Start();
System.Windows.Forms.Timer t2 = new System.Windows.Forms.Timer();
t2.Interval = 100; // 14 mins between wakeup commands
t2.Tick += new EventHandler(timer_Tick2);
t2.Start();
lvwColumnSorter = new ListViewColumnSorter();
this.gamesListView.ListViewItemSorter = lvwColumnSorter;
if (searchTextBox.Visible)
@@ -48,6 +54,7 @@ namespace AndroidSideloader
}
private string oldTitle = "";
@@ -62,6 +69,7 @@ namespace AndroidSideloader
Properties.Settings.Default.MainDir = Environment.CurrentDirectory;
Properties.Settings.Default.Save();
if (!File.Exists(adbFile))
{
Directory.CreateDirectory(adbDir);
@@ -145,6 +153,7 @@ namespace AndroidSideloader
private async void Form1_Shown(object sender, EventArgs e)
{
EnterInstallBox.Checked = Properties.Settings.Default.EnterKeyInstall;
new Thread(() =>
{
Thread.Sleep(10000);
@@ -232,6 +241,12 @@ namespace AndroidSideloader
ADB.RunAdbCommandToString("shell input keyevent KEYCODE_WAKEUP");
}
void timer_Tick2(object sender, EventArgs e)
{
keyheld = false;
}
public async void ChangeTitle(string txt, bool reset = true)
{
this.Invoke(() => { oldTitle = txt; this.Text = "Rookie's Sideloader | " + txt; });
@@ -550,9 +565,13 @@ namespace AndroidSideloader
Thread t1 = new Thread(() =>
{
if (path.Contains("data"))
output += ADB.RunAdbCommandToString($"push \"{path}\" /sdcard/Android/");
else
output += ADB.RunAdbCommandToString($"push \"{path}\" /sdcard/Android/data/");
{
output += ADB.RunAdbCommandToString($"push \"{path}\" /sdcard/Android/");
}
else
{
output += ADB.RunAdbCommandToString($"push \"{path}\" /sdcard/Android/data/");
}
});
t1.IsBackground = true;
t1.Start();
@@ -573,7 +592,6 @@ namespace AndroidSideloader
public void listappsbtn()
{
ADB.WakeDevice();
m_combo.Invoke(() => { m_combo.Items.Clear(); });
var line = listapps().Split('\n');
@@ -753,7 +771,7 @@ namespace AndroidSideloader
string directory = Path.GetDirectoryName(data);
//if is directory
string dir = Path.GetDirectoryName(data);
string file = $"{dir}\\Install.txt";
string path = $"{dir}\\Install.txt";
if (Directory.Exists(data))
{
output += ADB.CopyOBB(data);
@@ -770,7 +788,7 @@ namespace AndroidSideloader
return;
else
ChangeTitle("Sideloading custom install.txt automatically.");
output += Sideloader.RunADBCommandsFromFile(file);
output += Sideloader.RunADBCommandsFromFile(path);
if (output.Error.Contains("mkdir"))
output.Error = "";
if (output.Error.Contains("reserved"))
@@ -804,15 +822,15 @@ namespace AndroidSideloader
{
if (File.Exists($"{dir}\\Install.txt"))
{
file = data;
DialogResult dialogResult = MessageBox.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
{
ChangeTitle("Sideloading custom install.txt automatically.");
output += Sideloader.RunADBCommandsFromFile(file);
output += Sideloader.RunADBCommandsFromFile(path);
ChangeTitle("Done.");
}
}
else
@@ -838,7 +856,7 @@ namespace AndroidSideloader
if (extension == ".txt")
{
ChangeTitle("Sideloading custom install.txt automatically.");
output += Sideloader.RunADBCommandsFromFile(file);
output += Sideloader.RunADBCommandsFromFile(path);
ChangeTitle("Done.");
}
}
@@ -1326,7 +1344,6 @@ without him none of this would be possible
{
Thread apkThread = new Thread(() =>
{
ADB.WakeDevice();
output += ADB.Sideload(file, packagename);
});
@@ -1341,7 +1358,6 @@ without him none of this would be possible
{
Thread installtxtThread = new Thread(() =>
{
ADB.WakeDevice();
output += Sideloader.RunADBCommandsFromFile(file);
ChangeTitle("Sideloading custom install.txt automatically.");
});
@@ -1355,7 +1371,6 @@ without him none of this would be possible
Debug.WriteLine(wrDelimiter);
ADB.WakeDevice();
string[] folders = Directory.GetDirectories(Environment.CurrentDirectory + "\\" + gameName);
foreach (string folder in folders)
@@ -1555,7 +1570,24 @@ without him none of this would be possible
label4.Visible = true;
searchTextBox.Focus();
}
return base.ProcessCmdKey(ref msg, keyData);
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);
if (dialogResult == DialogResult.Yes)
{
Properties.Settings.Default.PackageNameToCB = true;
Properties.Settings.Default.Save();
}
if (dialogResult == DialogResult.No)
{
Properties.Settings.Default.PackageNameToCB = false;
Properties.Settings.Default.Save();
}
}
return base.ProcessCmdKey(ref msg, keyData);
}
private void searchTextBox_TextChanged(object sender, EventArgs e)
{
@@ -1567,45 +1599,51 @@ without him none of this would be possible
ListViewItem foundItem = gamesListView.FindItemWithText(searchTextBox.Text, true, 0, true);
if (foundItem != null)
{
foundItem.Selected = true;
gamesListView.TopItem = foundItem;
if (foundItem == gamesListView.TopItem)
{
gamesListView.TopItem.Selected = true;
}
else
gamesListView.SelectedItems.Clear();
foundItem.Selected = true;
if (searchTextBox.Text.Length == 0)
gamesListView.SelectedItems.Clear();
searchTextBox.Focus();
this.searchTextBox.KeyPress += new
System.Windows.Forms.KeyPressEventHandler(CheckEnter);
}
else
gamesListView.SelectedItems.Clear();
}
}
public void gamesListView_SelectedIndexChanged(object sender, EventArgs e)
{
if (gamesListView.SelectedItems.Count < 1)
return;
string CurrentPackageName = gamesListView.SelectedItems[gamesListView.SelectedItems.Count - 1].SubItems[SideloaderRCLONE.PackageNameIndex].Text;
string CurrentReleaseName = gamesListView.SelectedItems[gamesListView.SelectedItems.Count - 1].SubItems[SideloaderRCLONE.ReleaseNameIndex].Text;
taa = CurrentPackageName;
if (!keyheld)
{
string ImagePath = $"{SideloaderRCLONE.ThumbnailsFolder}\\{CurrentPackageName}.jpg";
string NotePath = $"{SideloaderRCLONE.NotesFolder}\\{CurrentReleaseName}.txt";
if (gamesPictureBox.BackgroundImage != null)
gamesPictureBox.BackgroundImage.Dispose();
if (File.Exists(ImagePath))
gamesPictureBox.BackgroundImage = Image.FromFile(ImagePath);
if (Properties.Settings.Default.PackageNameToCB)
Clipboard.SetText(CurrentPackageName);
string ImagePath = $"{SideloaderRCLONE.ThumbnailsFolder}\\{CurrentPackageName}.jpg";
if (gamesPictureBox.BackgroundImage != null)
gamesPictureBox.BackgroundImage.Dispose();
if (File.Exists(ImagePath) && !keyheld)
{
gamesPictureBox.BackgroundImage = Image.FromFile(ImagePath);
}
keyheld = true;
}
else
gamesPictureBox.BackgroundImage = new Bitmap(360, 203);
string NotePath = $"{SideloaderRCLONE.NotesFolder}\\{CurrentReleaseName}.txt";
if (File.Exists(NotePath))
notesRichTextBox.Text = File.ReadAllText(NotePath);
else
@@ -1744,11 +1782,19 @@ without him none of this would be possible
label4.Visible = true;
searchTextBox.Focus();
}
private void EnterInstallBox1_CheckedChanged(object sender, EventArgs e)
{
Properties.Settings.Default.EnterKeyInstall = EnterInstallBox.Checked;
}
private void searchTextBox_Leave(object sender, EventArgs e)
{
if (searchTextBox.Visible)
searchTextBox.Focus();
{
searchTextBox.Visible = false;
label2.Visible = false;
label3.Visible = false;
label4.Visible = false;
}
else
gamesListView.Focus();
}
@@ -1757,20 +1803,36 @@ without him none of this would be possible
{
if (e.KeyChar == (char)Keys.Enter)
{
if (gamesListView.SelectedItems.Count > 0)
downloadInstallGameButton_Click(sender, e);
}
if (Properties.Settings.Default.EnterKeyInstall)
{
if (gamesListView.SelectedItems.Count > 0)
downloadInstallGameButton_Click(sender, e);
}
}
}
private void searchTextBox_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Enter)
{
if (gamesListView.SelectedItems.Count > 0)
downloadInstallGameButton_Click(sender, e);
}
if (Properties.Settings.Default.EnterKeyInstall)
{
if (gamesListView.SelectedItems.Count > 0)
downloadInstallGameButton_Click(sender, e);
}
}
}
private void pictureBox1_Click(object sender, EventArgs e)
{
}
private void EnterInstallBox_CheckedChanged(object sender, EventArgs e)
{
Properties.Settings.Default.EnterKeyInstall = EnterInstallBox.Checked;
Properties.Settings.Default.Save();
}
}
}
public static class ControlExtensions
@@ -1787,3 +1849,4 @@ without him none of this would be possible
}
}
}
}

View File

@@ -181,7 +181,7 @@ namespace AndroidSideloader.Properties {
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("Microsoft Sans Serif, 9.5pt")]
[global::System.Configuration.DefaultSettingValueAttribute("Microsoft Sans Serif, 10pt, style=Bold")]
public global::System.Drawing.Font FontStyle {
get {
return ((global::System.Drawing.Font)(this["FontStyle"]));
@@ -466,5 +466,41 @@ namespace AndroidSideloader.Properties {
this["CurrentGamename"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool PackageNameToCB {
get {
return ((bool)(this["PackageNameToCB"]));
}
set {
this["PackageNameToCB"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool EnterKeyInstall {
get {
return ((bool)(this["EnterKeyInstall"]));
}
set {
this["EnterKeyInstall"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool DownUpHeld {
get {
return ((bool)(this["DownUpHeld"]));
}
set {
this["DownUpHeld"] = 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, 9.5pt</Value>
<Value Profile="(Default)">Microsoft Sans Serif, 10pt, style=Bold</Value>
</Setting>
<Setting Name="BackPicturePath" Type="System.String" Scope="User">
<Value Profile="(Default)" />
@@ -113,5 +113,14 @@
<Setting Name="CurrentGamename" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="PackageNameToCB" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="EnterKeyInstall" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="DownUpHeld" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@@ -38,6 +38,8 @@
this.BandwithTextbox = new System.Windows.Forms.TextBox();
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.SuspendLayout();
//
// checkForUpdatesCheckBox
@@ -62,7 +64,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, 185);
this.applyButton.Location = new System.Drawing.Point(12, 178);
this.applyButton.Name = "applyButton";
this.applyButton.Size = new System.Drawing.Size(101, 31);
this.applyButton.TabIndex = 5;
@@ -92,7 +94,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, 185);
this.resetSettingsButton.Location = new System.Drawing.Point(119, 178);
this.resetSettingsButton.Name = "resetSettingsButton";
this.resetSettingsButton.Size = new System.Drawing.Size(101, 31);
this.resetSettingsButton.TabIndex = 4;
@@ -147,9 +149,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, 155);
this.BandwithTextbox.Location = new System.Drawing.Point(12, 148);
this.BandwithTextbox.Name = "BandwithTextbox";
this.BandwithTextbox.Size = new System.Drawing.Size(177, 21);
this.BandwithTextbox.Size = new System.Drawing.Size(177, 22);
this.BandwithTextbox.TabIndex = 11;
//
// label1
@@ -157,7 +159,7 @@
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, 134);
this.label1.Location = new System.Drawing.Point(10, 127);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(224, 16);
this.label1.TabIndex = 12;
@@ -178,17 +180,51 @@
"K",
"M",
"G"});
this.BandwithComboBox.Location = new System.Drawing.Point(195, 153);
this.BandwithComboBox.Location = new System.Drawing.Point(195, 146);
this.BandwithComboBox.Name = "BandwithComboBox";
this.BandwithComboBox.Size = new System.Drawing.Size(55, 23);
this.BandwithComboBox.Size = new System.Drawing.Size(55, 24);
this.BandwithComboBox.TabIndex = 13;
//
// DebugLogCopy
//
this.DebugLogCopy.BackColor = global::AndroidSideloader.Properties.Settings.Default.SubButtonColor;
this.DebugLogCopy.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.DebugLogCopy.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.DebugLogCopy.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "SubButtonColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
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, 215);
this.DebugLogCopy.Name = "DebugLogCopy";
this.DebugLogCopy.Size = new System.Drawing.Size(285, 31);
this.DebugLogCopy.TabIndex = 5;
this.DebugLogCopy.Text = "Copy DebugLog to Desktop";
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, 252);
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);
//
// 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(315, 237);
this.ClientSize = new System.Drawing.Size(313, 291);
this.Controls.Add(this.BandwithComboBox);
this.Controls.Add(this.label1);
this.Controls.Add(this.BandwithTextbox);
@@ -196,13 +232,14 @@
this.Controls.Add(this.updateConfigCheckBox);
this.Controls.Add(this.deleteAfterInstallCheckBox);
this.Controls.Add(this.enableMessageBoxesCheckBox);
this.Controls.Add(this.CrashLogCopy);
this.Controls.Add(this.DebugLogCopy);
this.Controls.Add(this.applyButton);
this.Controls.Add(this.checkForUpdatesCheckBox);
this.Controls.Add(this.resetSettingsButton);
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.MaximumSize = new System.Drawing.Size(331, 276);
this.MinimumSize = new System.Drawing.Size(331, 276);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Name = "SettingsForm";
this.ShowIcon = false;
this.Text = "Settings";
@@ -224,5 +261,7 @@
private System.Windows.Forms.TextBox BandwithTextbox;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.ComboBox BandwithComboBox;
private System.Windows.Forms.Button DebugLogCopy;
private System.Windows.Forms.Button CrashLogCopy;
}
}

View File

@@ -1,5 +1,6 @@
using JR.Utils.GUI.Forms;
using System;
using System.IO;
using System.Windows.Forms;
namespace AndroidSideloader
@@ -46,6 +47,41 @@ namespace AndroidSideloader
deleteAfterInstallToolTip.SetToolTip(this.deleteAfterInstallCheckBox, "If this is checked, the software will delete all game files after downloading and installing a game from a remote server");
}
private void DebugLogCopy_click(object sender, EventArgs e)
{
if (File.Exists($"{Properties.Settings.Default.MainDir}\\debuglog.txt"))
{
if (File.Exists($"{Environment.GetFolderPath(Environment.SpecialFolder.Desktop)}\\debuglog.txt"))
File.Delete($"{Environment.GetFolderPath(Environment.SpecialFolder.Desktop)}\\debuglog.txt");
System.IO.File.Copy($"{Properties.Settings.Default.MainDir}\\debuglog.txt", $"{Environment.GetFolderPath(Environment.SpecialFolder.Desktop)}\\debuglog.txt", true);
MessageBox.Show("debuglog.txt copied to your desktop!");
}
}
private void CrashLogCopy_click(object sender, EventArgs e)
{
if (File.Exists($"{Properties.Settings.Default.MainDir}\\crashlog.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!");
}
else
MessageBox.Show("No crashlog found!");
}
//Apply settings
private void applyButton_Click(object sender, EventArgs e)
{
@@ -96,5 +132,6 @@ namespace AndroidSideloader
{
Properties.Settings.Default.userJsonOnGameInstall = userJsonOnGameInstall.Checked;
}
}
}

View File

@@ -186,9 +186,10 @@ And all of them added to PATH, without ANY of them, the spoofer won't work!";
output += ADB.RunAdbCommandToString("pull " + apkPath); //pull apk
if (File.Exists(Properties.Settings.Default.ADBFolder + "\\" + packageName + ".apk"))
File.Delete(Properties.Settings.Default.ADBFolder + "\\" + packageName + ".apk");
if (File.Exists(Properties.Settings.Default.MainDir + "\\" + packageName + ".apk"))
File.Delete(Properties.Settings.Default.MainDir + "\\" + packageName + ".apk");
MessageBox.Show("APK is named" + packageName + ".apk. Opening containing folder now.");
File.Move(Properties.Settings.Default.ADBFolder + "\\base.apk", Environment.CurrentDirectory + "\\" + packageName + ".apk");
return output;

View File

@@ -9,7 +9,7 @@ namespace AndroidSideloader
string[] files = Directory.GetFiles(path);
foreach (string file in files)
if (file.EndsWith(".obb"))
if (file.EndsWith(".obb") || Path.GetDirectoryName(file).Contains(".") && !Path.GetDirectoryName(file).Contains("_data"))
return true;
return false;
}

View File

@@ -16,7 +16,7 @@ namespace AndroidSideloader
public static string Repostory { get; set; }
private static string RawGitHubUrl;
private static string GitHubUrl;
static readonly public string LocalVersion = "2.1.3";
static readonly public string LocalVersion = "2.1.3.2";
public static string currentVersion = string.Empty;
public static string changelog = string.Empty;

View File

@@ -1,3 +1,70 @@
-----BEGIN PGP SIGNED MESSAGE-----
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 all issues with Install.txt path.
= Clicking out of search box now closes it.
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmDsFZ8ACgkQx/Rql1Vo
czcwJg/+PFiXfh6PPZNIRf2Zeht7WN8oxuUFV907KnD5+gKD0rzNd1NzgrcPOgAh
/oJakvY6ryLyaopJFZ8bm7++tQ3w6mbnzPaGweNoOF7/oLDb9NKVlK5/VjA3JPPN
QtOebRgBsigoRGGTq0s7ZRZV99vtSm2R1+1z9qlEu5Fm2hEiIggLvSBdGWDhbGnZ
jnvAZixeYgR+R6x4MZTsDao+qIYMio7heiVdN03gQ4hAaPbZ/I6s3cS+K33k02Nz
IEATqkwoLOevmN/D773A0cMzh/ZQWs557E3aKtwB+EHo/0ucCk0WaMSt4WdH8Qqe
WWF6+UT8FEEN2M76SQrg80xBj3QxzfIi92c231rVvtHMiVn5qUhTrDYb2wqx7J99
cJeMgANBmWSBZRBNW7jwhAxUVXE9vE8eqBza9MarXbJaLtq3Mf0ECLWvFPllA8dU
lnBcdSuTESvZkBAokkCwEJOb7sootBpEz5BZtE268mZEfsHUGWo3/VZDrJ7lLXJW
mEE2aCcHpNWysa9CsSee/QWNgLH2v+9PM3r/1SJyQ23C2hwyQI+F2lkch8Ar5Qfn
YxMWnhAcYXTRtcxY0s7xuhpUr/TGc6m9QY6NeVYMvb3g1gbmGOyyN/MELNOkEF/l
FXnrY4AfaNTs6EL6/id/viGcHc1MnnjgzlTNg5rgoxtFrHdVwP4=
=o0TQ
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
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).
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.
+ Added timestamps to Dialogbox
+ Added pictures for all current titles.
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmDp024ACgkQx/Rql1Vo
czcYvA/9EqVDtGRprPp2q/K+NPTPmMPmtsoiRNU/LEDmkwiEOCcRoPNwnLbRFz7S
uoM7Trh05aquLgadTVQmoPLZriJPYwUUT5KBJBso1UT5fVyJ5bkfh6+MBQqxOx2j
YDyqFHdPVQL6QqMQig/XEoyJIWaqHPD60DR0I63E5GOK88cbxPBD94KEQDNhXvcO
mcJXwr9TmyEqOT5IgsoIfOwMQotB+MnrMO7bSFitpl8sAcxSMpoURz/KOAdR8+f8
K+OwUTNzuI01C+WRNa9xOhxSp7rRhYoPoNZgxR1/3NOMtNeSU4dEPOk7n/hpEnDS
MM8DtXIZJ0o26Oo+uL60a61zxUZ1P1w8ks/IGEG3nzqc5b1Fh0LilgBzUtwh1eEs
g9LcXKALwStJbfYFTzpjhKDQfUlGFRZUSE52BFCcZ4MlgIjbR5buVF4l+QfnR6BW
PGW50NoTsA/U+Yqxg5xRXRkyKc9+wBFJj3r4dISNJj8psqzbtKgvodjJbMqKmJjL
ZE0lWp2bx/DP19IZjn5FVRzBSqYfBmilyLRx53syNmpDQQ1l2v1YdgXLxcbeL4JO
f2nfjyMTM2BrEztpevNb2s4oKm5zYjUCNxmJy1PUCt0RBMNCBKPVRa9KEE/se5UU
ZDbqfFJx1oqL1vcLH9CNTIhiA2Ar2SJEtBzB0GutoYkIdGo8dJY=
=dYs/
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

View File

@@ -1 +1 @@
2.1.3
2.1.3.2