Use GUI for ORS instead of console only
diff --git a/gui/action.cpp b/gui/action.cpp
index 9c3ee59..19a8b69 100644
--- a/gui/action.cpp
+++ b/gui/action.cpp
@@ -1013,27 +1013,6 @@
int load_theme = 1;
DataManager::SetValue(TW_IS_ENCRYPTED, 0);
- DataManager::ReadSettingsFile();
- // Check for the SCRIPT_FILE_TMP first as these are AOSP recovery commands
- // that we converted to ORS commands during boot in recovery.cpp.
- // Run those first.
- if (TWFunc::Path_Exists(SCRIPT_FILE_TMP)) {
- ui_print("Processing AOSP recovery commands...\n");
- if (OpenRecoveryScript::run_script_file() == 0) {
- usleep(2000000); // Sleep for 2 seconds before rebooting
- TWFunc::tw_reboot(rb_system);
- load_theme = 0;
- }
- }
- // Check for the ORS file in /cache and attempt to run those commands.
- if (OpenRecoveryScript::check_for_script_file()) {
- ui_print("Processing OpenRecoveryScript file...\n");
- if (OpenRecoveryScript::run_script_file() == 0) {
- usleep(2000000); // Sleep for 2 seconds before rebooting
- TWFunc::tw_reboot(rb_system);
- load_theme = 0;
- }
- }
if (load_theme) {
int has_datamedia;
@@ -1083,7 +1062,6 @@
string result, Sideload_File;
if (!PartitionManager.Mount_Current_Storage(true)) {
- DataManager::SetValue("tw_page_done", "1"); // For OpenRecoveryScript support
operation_end(1, simulate);
return 0;
}
@@ -1114,7 +1092,6 @@
}
}
}
- DataManager::SetValue("tw_page_done", "1"); // For OpenRecoveryScript support
operation_end(ret, simulate);
return 0;
}
@@ -1130,6 +1107,36 @@
DataManager::SetValue("tw_page_done", "1"); // For OpenRecoveryScript support
return 0;
}
+ if (function == "openrecoveryscript") {
+ operation_start("OpenRecoveryScript");
+ if (simulate) {
+ simulate_progress_bar();
+ } else {
+ // Check for the SCRIPT_FILE_TMP first as these are AOSP recovery commands
+ // that we converted to ORS commands during boot in recovery.cpp.
+ // Run those first.
+ int reboot = 0;
+ if (TWFunc::Path_Exists(SCRIPT_FILE_TMP)) {
+ ui_print("Processing AOSP recovery commands...\n");
+ if (OpenRecoveryScript::run_script_file() == 0) {
+ reboot = 1;
+ }
+ }
+ // Check for the ORS file in /cache and attempt to run those commands.
+ if (OpenRecoveryScript::check_for_script_file()) {
+ ui_print("Processing OpenRecoveryScript file...\n");
+ if (OpenRecoveryScript::run_script_file() == 0) {
+ reboot = 1;
+ }
+ }
+ if (reboot) {
+ usleep(2000000); // Sleep for 2 seconds before rebooting
+ TWFunc::tw_reboot(rb_system);
+ } else {
+ DataManager::SetValue("tw_page_done", 1);
+ }
+ }
+ }
}
else
{
diff --git a/gui/devices/1024x600/res/ui.xml b/gui/devices/1024x600/res/ui.xml
index 4bed850..8a14faf 100755
--- a/gui/devices/1024x600/res/ui.xml
+++ b/gui/devices/1024x600/res/ui.xml
@@ -3451,26 +3451,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3507,7 +3494,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
diff --git a/gui/devices/1024x768/res/ui.xml b/gui/devices/1024x768/res/ui.xml
index 1cdd77a..21d429c 100644
--- a/gui/devices/1024x768/res/ui.xml
+++ b/gui/devices/1024x768/res/ui.xml
@@ -3451,26 +3451,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3507,7 +3494,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
diff --git a/gui/devices/1280x800/res/ui.xml b/gui/devices/1280x800/res/ui.xml
index 11fa7dc..9c84304 100644
--- a/gui/devices/1280x800/res/ui.xml
+++ b/gui/devices/1280x800/res/ui.xml
@@ -3451,26 +3451,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3507,7 +3494,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
diff --git a/gui/devices/1920x1200/res/ui.xml b/gui/devices/1920x1200/res/ui.xml
index c829e9b..40df4a8 100644
--- a/gui/devices/1920x1200/res/ui.xml
+++ b/gui/devices/1920x1200/res/ui.xml
@@ -3451,26 +3451,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3507,7 +3494,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
diff --git a/gui/devices/2560x1600/res/ui.xml b/gui/devices/2560x1600/res/ui.xml
index ac00dee..d2f5a13 100644
--- a/gui/devices/2560x1600/res/ui.xml
+++ b/gui/devices/2560x1600/res/ui.xml
@@ -3451,26 +3451,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3507,7 +3494,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
@@ -3528,7 +3518,7 @@
<sort name="tw_gui_sort_order" />
<icon folder="folder_icon" file="file_icon" />
<background color="%fileselector_background%" />
- <font resource="font" spacing="%fileselector_spacing%" color="%text_color%" />
+ <font resource="filelist" spacing="%fileselector_spacing%" color="%text_color%" />
<filter folders="1" files="0" />
<path name="tw_terminal_location" default="/" />
<data name="tw_terminal" />
diff --git a/gui/devices/320x480/res/ui.xml b/gui/devices/320x480/res/ui.xml
index 778d49f..2cc401b 100644
--- a/gui/devices/320x480/res/ui.xml
+++ b/gui/devices/320x480/res/ui.xml
@@ -3428,26 +3428,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3484,7 +3471,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
diff --git a/gui/devices/480x800/res/ui.xml b/gui/devices/480x800/res/ui.xml
index 0c2c03f..bb214c8 100644
--- a/gui/devices/480x800/res/ui.xml
+++ b/gui/devices/480x800/res/ui.xml
@@ -3427,26 +3427,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3483,7 +3470,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
diff --git a/gui/devices/480x854/res/ui.xml b/gui/devices/480x854/res/ui.xml
index b1cf00c..819d245 100644
--- a/gui/devices/480x854/res/ui.xml
+++ b/gui/devices/480x854/res/ui.xml
@@ -3426,26 +3426,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3482,7 +3469,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
diff --git a/gui/devices/540x960/res/ui.xml b/gui/devices/540x960/res/ui.xml
index 481beca..e4cf5c0 100644
--- a/gui/devices/540x960/res/ui.xml
+++ b/gui/devices/540x960/res/ui.xml
@@ -3427,26 +3427,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3483,7 +3470,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
diff --git a/gui/devices/720x1280/res/ui.xml b/gui/devices/720x1280/res/ui.xml
index eed6c58..e3eabf3 100644
--- a/gui/devices/720x1280/res/ui.xml
+++ b/gui/devices/720x1280/res/ui.xml
@@ -1556,9 +1556,7 @@
</object>
<object type="action">
- <conditions>
- <condition var1="tw_operation_state" var2="1" />
- </conditions>
+ <condition var1="tw_operation_state" var2="1" />
<actions>
<action function="set">tw_back=backup</action>
<action function="set">tw_complete_text1=Backup Complete</action>
@@ -3434,26 +3432,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3490,7 +3475,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
diff --git a/gui/devices/800x1280/res/ui.xml b/gui/devices/800x1280/res/ui.xml
index 88768f1..2b6e3ef 100755
--- a/gui/devices/800x1280/res/ui.xml
+++ b/gui/devices/800x1280/res/ui.xml
@@ -3428,26 +3428,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3484,7 +3471,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
diff --git a/gui/devices/800x480/res/ui.xml b/gui/devices/800x480/res/ui.xml
index 6096c57..b418111 100755
--- a/gui/devices/800x480/res/ui.xml
+++ b/gui/devices/800x480/res/ui.xml
@@ -3451,26 +3451,13 @@
<text>Cancel</text>
<image resource="main_button" />
<actions>
+ <action function="set">tw_page_done=1</action>
<action function="page">main</action>
</actions>
</object>
<object type="template" name="keyboardtemplate" />
- <object type="action">
- <touch key="home" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
- <object type="action">
- <touch key="back" />
- <actions>
- <action function="page">main</action>
- </actions>
- </object>
-
<object type="template" name="footer" />
</page>
@@ -3507,7 +3494,10 @@
<condition var1="tw_operation_state" var2="1" />
<condition var1="tw_operation_status" op="=" var2="0" />
</conditions>
- <action function="page">main</action>
+ <actions>
+ <action function="set">tw_page_done=1</action>
+ <action function="page">main</action>
+ </actions>
</object>
</page>
diff --git a/gui/gui.cpp b/gui/gui.cpp
index c431d8f..92eab29 100644
--- a/gui/gui.cpp
+++ b/gui/gui.cpp
@@ -615,6 +615,7 @@
gGuiInputRunning = 1;
}
+ DataManager::SetValue("tw_page_done", 0);
return runPage(page_name);
}