From 16b74353d99615b4acbb60f3fbe49f4443e0365f Mon Sep 17 00:00:00 2001 From: Dees_Troy Date: Wed, 14 Nov 2012 22:27:31 +0000 Subject: Fixes for multi-user in 4.2 Also fixed inability to delete backups with a space in the name. Change-Id: I2f6639d33caa3c4542960f76adbd59b25ab64f5d --- data.cpp | 43 +- data.hpp | 1 + gui/devices/1024x600/res/ui.xml | 2 +- gui/devices/1024x768/res/ui.xml | 2 +- gui/devices/1280x800/res/ui.xml | 2 +- gui/devices/1920x1200/res/ui.xml | 2 +- .../2560x1600/res/fonts/Roboto-Regular-30.dat | Bin 0 -> 8722 bytes gui/devices/2560x1600/res/images/back-icon.png | Bin 0 -> 1614 bytes gui/devices/2560x1600/res/images/background.jpg | Bin 0 -> 24964 bytes .../2560x1600/res/images/backgroundbottom.jpg | Bin 0 -> 3639 bytes .../2560x1600/res/images/backgroundside.jpg | Bin 0 -> 2779 bytes gui/devices/2560x1600/res/images/button.png | Bin 0 -> 3054 bytes .../2560x1600/res/images/checkbox_checked.png | Bin 0 -> 1548 bytes .../2560x1600/res/images/checkbox_empty.png | Bin 0 -> 440 bytes gui/devices/2560x1600/res/images/console-icon.png | Bin 0 -> 2198 bytes .../2560x1600/res/images/console-toggle.png | Bin 0 -> 2072 bytes gui/devices/2560x1600/res/images/curtain.jpg | Bin 0 -> 84783 bytes .../2560x1600/res/images/exclamation400.png | Bin 0 -> 11295 bytes gui/devices/2560x1600/res/images/file.png | Bin 0 -> 982 bytes gui/devices/2560x1600/res/images/folder.png | Bin 0 -> 902 bytes gui/devices/2560x1600/res/images/home-icon.png | Bin 0 -> 1466 bytes .../2560x1600/res/images/indeterminate001.png | Bin 0 -> 3791 bytes .../2560x1600/res/images/indeterminate002.png | Bin 0 -> 3796 bytes .../2560x1600/res/images/indeterminate003.png | Bin 0 -> 3772 bytes .../2560x1600/res/images/indeterminate004.png | Bin 0 -> 3760 bytes .../2560x1600/res/images/indeterminate005.png | Bin 0 -> 3780 bytes .../2560x1600/res/images/indeterminate006.png | Bin 0 -> 3732 bytes gui/devices/2560x1600/res/images/keyboard1.png | Bin 0 -> 107358 bytes gui/devices/2560x1600/res/images/keyboard2.png | Bin 0 -> 115842 bytes gui/devices/2560x1600/res/images/keyboard3.png | Bin 0 -> 111470 bytes gui/devices/2560x1600/res/images/keyboard4.png | Bin 0 -> 107902 bytes gui/devices/2560x1600/res/images/large_black.png | Bin 0 -> 13121 bytes gui/devices/2560x1600/res/images/medium-button.png | Bin 0 -> 862 bytes .../2560x1600/res/images/mediumwide-button.png | Bin 0 -> 910 bytes gui/devices/2560x1600/res/images/minus-button.png | Bin 0 -> 635 bytes gui/devices/2560x1600/res/images/plus-button.png | Bin 0 -> 977 bytes .../2560x1600/res/images/progress_empty.png | Bin 0 -> 261 bytes gui/devices/2560x1600/res/images/progress_fill.png | Bin 0 -> 316 bytes gui/devices/2560x1600/res/images/radio_empty.png | Bin 0 -> 2673 bytes .../2560x1600/res/images/radio_selected.png | Bin 0 -> 3432 bytes gui/devices/2560x1600/res/images/slider-touch.png | Bin 0 -> 20867 bytes gui/devices/2560x1600/res/images/slider-used.png | Bin 0 -> 6807 bytes gui/devices/2560x1600/res/images/slider.png | Bin 0 -> 14723 bytes gui/devices/2560x1600/res/images/sort-button.png | Bin 0 -> 1033 bytes gui/devices/2560x1600/res/images/unlock.png | Bin 0 -> 68671 bytes gui/devices/2560x1600/res/ui.xml | 3623 ++++++++++++++++++++ gui/devices/320x480/res/ui.xml | 2 +- gui/devices/480x800/res/ui.xml | 2 +- gui/devices/480x854/res/ui.xml | 2 +- gui/devices/540x960/res/ui.xml | 2 +- gui/devices/720x1280/res/ui.xml | 2 +- gui/devices/800x1280/res/ui.xml | 2 +- gui/devices/800x480/res/ui.xml | 2 +- partition.cpp | 26 +- partitionmanager.cpp | 9 + variables.h | 2 +- 56 files changed, 3681 insertions(+), 45 deletions(-) create mode 100644 gui/devices/2560x1600/res/fonts/Roboto-Regular-30.dat create mode 100644 gui/devices/2560x1600/res/images/back-icon.png create mode 100644 gui/devices/2560x1600/res/images/background.jpg create mode 100644 gui/devices/2560x1600/res/images/backgroundbottom.jpg create mode 100644 gui/devices/2560x1600/res/images/backgroundside.jpg create mode 100644 gui/devices/2560x1600/res/images/button.png create mode 100644 gui/devices/2560x1600/res/images/checkbox_checked.png create mode 100644 gui/devices/2560x1600/res/images/checkbox_empty.png create mode 100644 gui/devices/2560x1600/res/images/console-icon.png create mode 100644 gui/devices/2560x1600/res/images/console-toggle.png create mode 100644 gui/devices/2560x1600/res/images/curtain.jpg create mode 100644 gui/devices/2560x1600/res/images/exclamation400.png create mode 100644 gui/devices/2560x1600/res/images/file.png create mode 100644 gui/devices/2560x1600/res/images/folder.png create mode 100644 gui/devices/2560x1600/res/images/home-icon.png create mode 100755 gui/devices/2560x1600/res/images/indeterminate001.png create mode 100755 gui/devices/2560x1600/res/images/indeterminate002.png create mode 100755 gui/devices/2560x1600/res/images/indeterminate003.png create mode 100755 gui/devices/2560x1600/res/images/indeterminate004.png create mode 100755 gui/devices/2560x1600/res/images/indeterminate005.png create mode 100755 gui/devices/2560x1600/res/images/indeterminate006.png create mode 100644 gui/devices/2560x1600/res/images/keyboard1.png create mode 100644 gui/devices/2560x1600/res/images/keyboard2.png create mode 100644 gui/devices/2560x1600/res/images/keyboard3.png create mode 100644 gui/devices/2560x1600/res/images/keyboard4.png create mode 100644 gui/devices/2560x1600/res/images/large_black.png create mode 100644 gui/devices/2560x1600/res/images/medium-button.png create mode 100644 gui/devices/2560x1600/res/images/mediumwide-button.png create mode 100644 gui/devices/2560x1600/res/images/minus-button.png create mode 100644 gui/devices/2560x1600/res/images/plus-button.png create mode 100644 gui/devices/2560x1600/res/images/progress_empty.png create mode 100644 gui/devices/2560x1600/res/images/progress_fill.png create mode 100644 gui/devices/2560x1600/res/images/radio_empty.png create mode 100644 gui/devices/2560x1600/res/images/radio_selected.png create mode 100644 gui/devices/2560x1600/res/images/slider-touch.png create mode 100644 gui/devices/2560x1600/res/images/slider-used.png create mode 100644 gui/devices/2560x1600/res/images/slider.png create mode 100644 gui/devices/2560x1600/res/images/sort-button.png create mode 100644 gui/devices/2560x1600/res/images/unlock.png create mode 100644 gui/devices/2560x1600/res/ui.xml diff --git a/data.cpp b/data.cpp index f7ad57a79..88c064b08 100644 --- a/data.cpp +++ b/data.cpp @@ -446,6 +446,18 @@ void DataManager::update_tz_environment_variables(void) { tzset(); } +void DataManager::SetBackupFolder() +{ + string str = GetCurrentStoragePath(); + str += "/TWRP/BACKUPS/"; + + string dev_id; + GetValue("device_id", dev_id); + + str += dev_id; + SetValue(TW_BACKUPS_FOLDER_VAR, str, 0); +} + void DataManager::SetDefaultValues() { string str, path; @@ -475,7 +487,7 @@ void DataManager::SetDefaultValues() LOGI("Internal path defined: '%s'\n", EXPAND(TW_INTERNAL_STORAGE_PATH)); mValues.insert(make_pair(TW_USE_EXTERNAL_STORAGE, make_pair("0", 1))); mConstValues.insert(make_pair(TW_HAS_INTERNAL, "1")); - mConstValues.insert(make_pair(TW_INTERNAL_PATH, EXPAND(TW_INTERNAL_STORAGE_PATH))); + mValues.insert(make_pair(TW_INTERNAL_PATH, make_pair(EXPAND(TW_INTERNAL_STORAGE_PATH), 0))); mConstValues.insert(make_pair(TW_INTERNAL_LABEL, EXPAND(TW_INTERNAL_STORAGE_MOUNT_POINT))); path.clear(); path = "/"; @@ -530,7 +542,7 @@ void DataManager::SetDefaultValues() // Device has /data/media mConstValues.insert(make_pair(TW_USE_EXTERNAL_STORAGE, "0")); mConstValues.insert(make_pair(TW_HAS_INTERNAL, "1")); - mConstValues.insert(make_pair(TW_INTERNAL_PATH, "/data/media")); + mValues.insert(make_pair(TW_INTERNAL_PATH, make_pair("/data/media", 0))); mConstValues.insert(make_pair(TW_INTERNAL_MOUNT, "/data")); mConstValues.insert(make_pair(TW_INTERNAL_LABEL, "data")); #ifdef TW_EXTERNAL_STORAGE_PATH @@ -547,7 +559,7 @@ void DataManager::SetDefaultValues() // Device has no internal storage mConstValues.insert(make_pair(TW_USE_EXTERNAL_STORAGE, "1")); mConstValues.insert(make_pair(TW_HAS_INTERNAL, "0")); - mConstValues.insert(make_pair(TW_INTERNAL_PATH, "0")); + mValues.insert(make_pair(TW_INTERNAL_PATH, make_pair("0", 0))); mConstValues.insert(make_pair(TW_INTERNAL_MOUNT, "0")); mConstValues.insert(make_pair(TW_INTERNAL_LABEL, "0")); #endif @@ -580,6 +592,10 @@ void DataManager::SetDefaultValues() LOGI("Defaulting to external storage.\n"); #endif +#ifdef RECOVERY_SDCARD_ON_DATA + if (PartitionManager.Mount_By_Path("/data", false) && TWFunc::Path_Exists("/data/media/0")) + SetValue(TW_INTERNAL_PATH, "/data/media/0"); +#endif str = GetCurrentStoragePath(); #ifdef RECOVERY_SDCARD_ON_DATA #ifndef TW_EXTERNAL_STORAGE_PATH @@ -889,27 +905,6 @@ void DataManager::ReadSettingsFile(void) } else { PartitionManager.Mount_Current_Storage(true); } - if (has_data_media == 1) { - if (has_dual == 0) { - LOGI("Mounting /data/media to /sdcard\n"); - system("umount /sdcard"); - system("mount /data/media /sdcard"); - } else { - string ext_path; - - GetValue(TW_EXTERNAL_PATH, ext_path); - if (ext_path == "/sdcard") { - LOGI("Mounting /data/media to /emmc\n"); - system("cd / && mkdir emmc"); - system("umount /emmc"); - system("mount /data/media /emmc"); - } else { - LOGI("Mounting /data/media to /sdcard\n"); - system("umount /sdcard"); - system("mount /data/media /sdcard"); - } - } - } if (has_ext) { string ext_path; diff --git a/data.hpp b/data.hpp index 98c40fec5..42c722033 100644 --- a/data.hpp +++ b/data.hpp @@ -48,6 +48,7 @@ public: static void DumpValues(); static void update_tz_environment_variables(); + static void SetBackupFolder(); static void SetDefaultValues(); static void Output_Version(void); // Outputs the version to a file in the TWRP folder static void ReadSettingsFile(void); diff --git a/gui/devices/1024x600/res/ui.xml b/gui/devices/1024x600/res/ui.xml index 2542a1868..cfcb52fc3 100755 --- a/gui/devices/1024x600/res/ui.xml +++ b/gui/devices/1024x600/res/ui.xml @@ -2198,7 +2198,7 @@ tw_back=restore tw_action=cmd - tw_action_param=cd %tw_backups_folder% && rm -rf %tw_restore_name% + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" tw_text1=Delete Backup? %tw_restore_name% tw_text2=This cannot be undone! tw_action_text1=Deleting Backup... diff --git a/gui/devices/1024x768/res/ui.xml b/gui/devices/1024x768/res/ui.xml index af14bc219..8e1a14818 100644 --- a/gui/devices/1024x768/res/ui.xml +++ b/gui/devices/1024x768/res/ui.xml @@ -2198,7 +2198,7 @@ tw_back=restore tw_action=cmd - tw_action_param=cd %tw_backups_folder% && rm -rf %tw_restore_name% + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" tw_text1=Delete Backup? %tw_restore_name% tw_text2=This cannot be undone! tw_action_text1=Deleting Backup... diff --git a/gui/devices/1280x800/res/ui.xml b/gui/devices/1280x800/res/ui.xml index 14f2b77fc..d7cbaaa4e 100644 --- a/gui/devices/1280x800/res/ui.xml +++ b/gui/devices/1280x800/res/ui.xml @@ -2198,7 +2198,7 @@ tw_back=restore tw_action=cmd - tw_action_param=cd %tw_backups_folder% && rm -rf %tw_restore_name% + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" tw_text1=Delete Backup? %tw_restore_name% tw_text2=This cannot be undone! tw_action_text1=Deleting Backup... diff --git a/gui/devices/1920x1200/res/ui.xml b/gui/devices/1920x1200/res/ui.xml index 62c07d626..fa1764933 100644 --- a/gui/devices/1920x1200/res/ui.xml +++ b/gui/devices/1920x1200/res/ui.xml @@ -2198,7 +2198,7 @@ tw_back=restore tw_action=cmd - tw_action_param=cd %tw_backups_folder% && rm -rf %tw_restore_name% + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" tw_text1=Delete Backup? %tw_restore_name% tw_text2=This cannot be undone! tw_action_text1=Deleting Backup... diff --git a/gui/devices/2560x1600/res/fonts/Roboto-Regular-30.dat b/gui/devices/2560x1600/res/fonts/Roboto-Regular-30.dat new file mode 100644 index 000000000..9f8082ccc Binary files /dev/null and b/gui/devices/2560x1600/res/fonts/Roboto-Regular-30.dat differ diff --git a/gui/devices/2560x1600/res/images/back-icon.png b/gui/devices/2560x1600/res/images/back-icon.png new file mode 100644 index 000000000..94dd69951 Binary files /dev/null and b/gui/devices/2560x1600/res/images/back-icon.png differ diff --git a/gui/devices/2560x1600/res/images/background.jpg b/gui/devices/2560x1600/res/images/background.jpg new file mode 100644 index 000000000..f7faabaf9 Binary files /dev/null and b/gui/devices/2560x1600/res/images/background.jpg differ diff --git a/gui/devices/2560x1600/res/images/backgroundbottom.jpg b/gui/devices/2560x1600/res/images/backgroundbottom.jpg new file mode 100644 index 000000000..6af64da24 Binary files /dev/null and b/gui/devices/2560x1600/res/images/backgroundbottom.jpg differ diff --git a/gui/devices/2560x1600/res/images/backgroundside.jpg b/gui/devices/2560x1600/res/images/backgroundside.jpg new file mode 100644 index 000000000..f5a1060e6 Binary files /dev/null and b/gui/devices/2560x1600/res/images/backgroundside.jpg differ diff --git a/gui/devices/2560x1600/res/images/button.png b/gui/devices/2560x1600/res/images/button.png new file mode 100644 index 000000000..e1b49fc57 Binary files /dev/null and b/gui/devices/2560x1600/res/images/button.png differ diff --git a/gui/devices/2560x1600/res/images/checkbox_checked.png b/gui/devices/2560x1600/res/images/checkbox_checked.png new file mode 100644 index 000000000..cac9a30ee Binary files /dev/null and b/gui/devices/2560x1600/res/images/checkbox_checked.png differ diff --git a/gui/devices/2560x1600/res/images/checkbox_empty.png b/gui/devices/2560x1600/res/images/checkbox_empty.png new file mode 100644 index 000000000..ee01fa852 Binary files /dev/null and b/gui/devices/2560x1600/res/images/checkbox_empty.png differ diff --git a/gui/devices/2560x1600/res/images/console-icon.png b/gui/devices/2560x1600/res/images/console-icon.png new file mode 100644 index 000000000..c1f4d7165 Binary files /dev/null and b/gui/devices/2560x1600/res/images/console-icon.png differ diff --git a/gui/devices/2560x1600/res/images/console-toggle.png b/gui/devices/2560x1600/res/images/console-toggle.png new file mode 100644 index 000000000..2495165fc Binary files /dev/null and b/gui/devices/2560x1600/res/images/console-toggle.png differ diff --git a/gui/devices/2560x1600/res/images/curtain.jpg b/gui/devices/2560x1600/res/images/curtain.jpg new file mode 100644 index 000000000..409664c6c Binary files /dev/null and b/gui/devices/2560x1600/res/images/curtain.jpg differ diff --git a/gui/devices/2560x1600/res/images/exclamation400.png b/gui/devices/2560x1600/res/images/exclamation400.png new file mode 100644 index 000000000..f3a8aabb6 Binary files /dev/null and b/gui/devices/2560x1600/res/images/exclamation400.png differ diff --git a/gui/devices/2560x1600/res/images/file.png b/gui/devices/2560x1600/res/images/file.png new file mode 100644 index 000000000..c77a1f483 Binary files /dev/null and b/gui/devices/2560x1600/res/images/file.png differ diff --git a/gui/devices/2560x1600/res/images/folder.png b/gui/devices/2560x1600/res/images/folder.png new file mode 100644 index 000000000..2770f0a24 Binary files /dev/null and b/gui/devices/2560x1600/res/images/folder.png differ diff --git a/gui/devices/2560x1600/res/images/home-icon.png b/gui/devices/2560x1600/res/images/home-icon.png new file mode 100644 index 000000000..8c1dde3c5 Binary files /dev/null and b/gui/devices/2560x1600/res/images/home-icon.png differ diff --git a/gui/devices/2560x1600/res/images/indeterminate001.png b/gui/devices/2560x1600/res/images/indeterminate001.png new file mode 100755 index 000000000..ea2b5e2ab Binary files /dev/null and b/gui/devices/2560x1600/res/images/indeterminate001.png differ diff --git a/gui/devices/2560x1600/res/images/indeterminate002.png b/gui/devices/2560x1600/res/images/indeterminate002.png new file mode 100755 index 000000000..f59b298ee Binary files /dev/null and b/gui/devices/2560x1600/res/images/indeterminate002.png differ diff --git a/gui/devices/2560x1600/res/images/indeterminate003.png b/gui/devices/2560x1600/res/images/indeterminate003.png new file mode 100755 index 000000000..cc6d7b535 Binary files /dev/null and b/gui/devices/2560x1600/res/images/indeterminate003.png differ diff --git a/gui/devices/2560x1600/res/images/indeterminate004.png b/gui/devices/2560x1600/res/images/indeterminate004.png new file mode 100755 index 000000000..9483117d6 Binary files /dev/null and b/gui/devices/2560x1600/res/images/indeterminate004.png differ diff --git a/gui/devices/2560x1600/res/images/indeterminate005.png b/gui/devices/2560x1600/res/images/indeterminate005.png new file mode 100755 index 000000000..850de0f88 Binary files /dev/null and b/gui/devices/2560x1600/res/images/indeterminate005.png differ diff --git a/gui/devices/2560x1600/res/images/indeterminate006.png b/gui/devices/2560x1600/res/images/indeterminate006.png new file mode 100755 index 000000000..e5194b39d Binary files /dev/null and b/gui/devices/2560x1600/res/images/indeterminate006.png differ diff --git a/gui/devices/2560x1600/res/images/keyboard1.png b/gui/devices/2560x1600/res/images/keyboard1.png new file mode 100644 index 000000000..8ee241671 Binary files /dev/null and b/gui/devices/2560x1600/res/images/keyboard1.png differ diff --git a/gui/devices/2560x1600/res/images/keyboard2.png b/gui/devices/2560x1600/res/images/keyboard2.png new file mode 100644 index 000000000..259bfecf5 Binary files /dev/null and b/gui/devices/2560x1600/res/images/keyboard2.png differ diff --git a/gui/devices/2560x1600/res/images/keyboard3.png b/gui/devices/2560x1600/res/images/keyboard3.png new file mode 100644 index 000000000..aaebd3084 Binary files /dev/null and b/gui/devices/2560x1600/res/images/keyboard3.png differ diff --git a/gui/devices/2560x1600/res/images/keyboard4.png b/gui/devices/2560x1600/res/images/keyboard4.png new file mode 100644 index 000000000..1fe856566 Binary files /dev/null and b/gui/devices/2560x1600/res/images/keyboard4.png differ diff --git a/gui/devices/2560x1600/res/images/large_black.png b/gui/devices/2560x1600/res/images/large_black.png new file mode 100644 index 000000000..91948eef4 Binary files /dev/null and b/gui/devices/2560x1600/res/images/large_black.png differ diff --git a/gui/devices/2560x1600/res/images/medium-button.png b/gui/devices/2560x1600/res/images/medium-button.png new file mode 100644 index 000000000..b4eb49324 Binary files /dev/null and b/gui/devices/2560x1600/res/images/medium-button.png differ diff --git a/gui/devices/2560x1600/res/images/mediumwide-button.png b/gui/devices/2560x1600/res/images/mediumwide-button.png new file mode 100644 index 000000000..3ca436eb2 Binary files /dev/null and b/gui/devices/2560x1600/res/images/mediumwide-button.png differ diff --git a/gui/devices/2560x1600/res/images/minus-button.png b/gui/devices/2560x1600/res/images/minus-button.png new file mode 100644 index 000000000..8dc17bfe6 Binary files /dev/null and b/gui/devices/2560x1600/res/images/minus-button.png differ diff --git a/gui/devices/2560x1600/res/images/plus-button.png b/gui/devices/2560x1600/res/images/plus-button.png new file mode 100644 index 000000000..05b34392c Binary files /dev/null and b/gui/devices/2560x1600/res/images/plus-button.png differ diff --git a/gui/devices/2560x1600/res/images/progress_empty.png b/gui/devices/2560x1600/res/images/progress_empty.png new file mode 100644 index 000000000..ff02df652 Binary files /dev/null and b/gui/devices/2560x1600/res/images/progress_empty.png differ diff --git a/gui/devices/2560x1600/res/images/progress_fill.png b/gui/devices/2560x1600/res/images/progress_fill.png new file mode 100644 index 000000000..84a582885 Binary files /dev/null and b/gui/devices/2560x1600/res/images/progress_fill.png differ diff --git a/gui/devices/2560x1600/res/images/radio_empty.png b/gui/devices/2560x1600/res/images/radio_empty.png new file mode 100644 index 000000000..c77130019 Binary files /dev/null and b/gui/devices/2560x1600/res/images/radio_empty.png differ diff --git a/gui/devices/2560x1600/res/images/radio_selected.png b/gui/devices/2560x1600/res/images/radio_selected.png new file mode 100644 index 000000000..d3b22789a Binary files /dev/null and b/gui/devices/2560x1600/res/images/radio_selected.png differ diff --git a/gui/devices/2560x1600/res/images/slider-touch.png b/gui/devices/2560x1600/res/images/slider-touch.png new file mode 100644 index 000000000..8a21a3b74 Binary files /dev/null and b/gui/devices/2560x1600/res/images/slider-touch.png differ diff --git a/gui/devices/2560x1600/res/images/slider-used.png b/gui/devices/2560x1600/res/images/slider-used.png new file mode 100644 index 000000000..4963ff5ae Binary files /dev/null and b/gui/devices/2560x1600/res/images/slider-used.png differ diff --git a/gui/devices/2560x1600/res/images/slider.png b/gui/devices/2560x1600/res/images/slider.png new file mode 100644 index 000000000..dfeea6eda Binary files /dev/null and b/gui/devices/2560x1600/res/images/slider.png differ diff --git a/gui/devices/2560x1600/res/images/sort-button.png b/gui/devices/2560x1600/res/images/sort-button.png new file mode 100644 index 000000000..b1f82182f Binary files /dev/null and b/gui/devices/2560x1600/res/images/sort-button.png differ diff --git a/gui/devices/2560x1600/res/images/unlock.png b/gui/devices/2560x1600/res/images/unlock.png new file mode 100644 index 000000000..6ca95d125 Binary files /dev/null and b/gui/devices/2560x1600/res/images/unlock.png differ diff --git a/gui/devices/2560x1600/res/ui.xml b/gui/devices/2560x1600/res/ui.xml new file mode 100644 index 000000000..fa1764933 --- /dev/null +++ b/gui/devices/2560x1600/res/ui.xml @@ -0,0 +1,3623 @@ + + + +
+ + TeamWin + Backup Naowz + Default basic theme + preview.jpg +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + tw_clear_destination=main2 + clear_vars + + + + + + + + + + + Install + + + + install + + + + + + + Backup + + backup + + + + + + Restore + + restore + + + + + + Wipe + + wipe + + + + + + Mount + + mount + + + + + + Settings + + settings + + + + + + Advanced + + advanced + + + + + + Reboot + + reboot + + + + + + + + + + + + Select Zip to Install + + + + + + + + + + Using external SD + + external + + + + + + + + + + Using external SD + + external + + + + + + + + + + Using internal storage + + internal + + + + + + + + + + Using internal storage + + internal + + + + +
+ Folders: + + + + + + + + +
+ + + +
+ %tw_zip_location% + + + + + + + + + +
+ + + + + + + + flash_confirm + + + + + + main + + + + + main + + + + + + + + + + + + WARNING: This operation may install incompatible software and render your device unusable. + + + + + + Folder: + + + + + + %tw_zip_location% + + + + + + File to flash: + + + + + + %tw_file% + + + + + + Press back to cancel adding this zip. + + + + + + Zip file signature verification? + + + + + + + + Force MD5 check on all zips? + + + + + + + + File %tw_zip_queue_count% of max of 10 + + + + + + + Add More Zips + + install + + + + + + Clear Queue + + + + install + + + + + + + flash_zip + + + + + + Swipe to Confirm Flash + + + + + + + install + + + + + + main + + + + + + + + + + + + + + Flashing file %tw_zip_index% of %tw_zip_queue_count% + + + + + + %tw_filename% + + + + + + + flash_done + + + + + + + + + + + + + Failed + + + + + + + Successful + + + + + + Wipe Cache/Dalvik + + + tw_back=flash_done + tw_action=wipe + tw_action_param=/cache + tw_has_action2=1 + tw_action2=wipe + tw_action2_param=dalvik + tw_text1=Wipe Cache & Dalvik? + tw_action_text1=Wiping Cache & Dalvik... + tw_complete_text1=Cache & Dalvik Wipe Complete + tw_slider_text=Swipe to Wipe + confirm_action + + + + + + + + Reboot System + + + tw_back=main2 + tw_action=reboot + tw_action_param=system + tw_has_action2=0 + tw_text1=No OS Installed! Are you + tw_text2=sure you wish to reboot? + tw_text3= + tw_text4= + tw_action_text1=Rebooting... + tw_action_text2= + tw_complete_text1=Rebooting... + tw_slider_text=Swipe to Reboot + rebootcheck + + + + + + + Home + + + tw_clear_destination=main2 + clear_vars + + + + + + + tw_clear_destination=install + clear_vars + + + + + + + tw_clear_destination=main2 + clear_vars + + + + + + + tw_operation_state=0 + tw_text1= + tw_text2= + tw_text3= + tw_text4= + tw_action_text1= + tw_action_text2= + tw_action_param= + tw_has_action2=0 + tw_action2= + tw_action2_param= + tw_has_cancel=0 + tw_cancel_action= + tw_cancel_param= + tw_show_exclamation=0 + tw_show_reboot=0 + %tw_clear_destination% + + + + + + + + + + + + + + + + + + %tw_text1% + + + + + + %tw_text2% + + + + + + %tw_text3% + + + + + + %tw_text4% + + + + + + Press back button to cancel. + + + + + + action_page + + + + + + %tw_slider_text% + + + + + + tw_clear_destination=%tw_back% + clear_vars + + + + + + main + + + + + + + + + + + + %tw_action_text1% + + + + + + %tw_action_text2% + + + + + + + + + Cancel + + %tw_cancel_param% + + + + + + + + action_complete + + + + + + + %tw_action_param% + + + + + + + %tw_action_param% + %tw_action2_param% + + + + + + + + + + + %tw_complete_text1% + + + + + + + Failed + + + + + + + Successful + + + + + + + + + Back + + + tw_clear_destination=%tw_back% + clear_vars + + + + + + + + Reboot System + + + tw_back=main2 + tw_action=reboot + tw_action_param=system + tw_has_action2=0 + tw_text1=No OS Installed! Are you + tw_text2=sure you wish to reboot? + tw_text3= + tw_text4= + tw_action_text1=Rebooting... + tw_action_text2= + tw_complete_text1=Rebooting... + tw_slider_text=Swipe to Reboot + rebootcheck + + + + + + + tw_clear_destination=main2 + clear_vars + + + + + + + tw_clear_destination=%tw_back% + clear_vars + + + + + + + %tw_filecheck% + + + + + + + + + tw_fileexists=1 + %tw_existpage% + + + + + + + + + + tw_fileexists=0 + %tw_notexistpage% + + + + + + + + %tw_action_param% + + + + + confirm_action + + + + + + + + + + Reboot Menu + + + + + + + System + + + tw_back=reboot + tw_action=reboot + tw_action_param=system + tw_has_action2=0 + tw_text1=No OS Installed! Are you + tw_text2=sure you wish to reboot? + tw_action_text1=Rebooting... + tw_complete_text1=Rebooting... + tw_slider_text=Swipe to Reboot + rebootcheck + + + + + + + + Power Off + + + tw_back=reboot + tw_action=reboot + tw_action_param=poweroff + tw_has_action2=0 + tw_text1=No OS Installed! Are you + tw_text2=sure you wish to power off? + tw_action_text1=Turning Off... + tw_complete_text1=Turning Off... + tw_slider_text=Swipe to Power Off + rebootcheck + + + + + + + + Recovery + + + tw_back=reboot + tw_action=reboot + tw_action_param=recovery + tw_has_action2=0 + tw_text1=No OS Installed! Are you + tw_text2=sure you wish to reboot? + tw_action_text1=Rebooting... + tw_complete_text1=Rebooting... + tw_slider_text=Swipe to Reboot + rebootcheck + + + + + + + + Bootloader + + + tw_back=reboot + tw_action=reboot + tw_action_param=bootloader + tw_has_action2=0 + tw_text1=No OS Installed! Are you + tw_text2=sure you wish to reboot? + tw_action_text1=Rebooting... + tw_complete_text1=Rebooting... + tw_slider_text=Swipe to Reboot + rebootcheck + + + + + + + + Download + + + tw_back=reboot + tw_action=reboot + tw_action_param=download + tw_has_action2=0 + tw_text1=No OS Installed! Are you + tw_text2=sure you wish to reboot? + tw_action_text1=Rebooting... + tw_complete_text1=Rebooting... + tw_slider_text=Swipe to Reboot + rebootcheck + + + + + + main + + + + + main + + + + + + + + + + + + Mount Menu + + + + + + + Mount USB Storage + + usb_mount + + + + + + + Mount System + + /system + + + + + + + Unmount System + + /system + + + + + + + Mount Data + + /data + + + + + + + Unmount Data + + /data + + + + + + + Mount Cache + + /cache + + + + + + + Unmount Cache + + /cache + + + + + + + + + + Mount SDCard + + EXTERNAL + + + + + + + + + + Unmount SDCard + + EXTERNAL + + + + + + + + + + + Mount Internal Storage + + INTERNAL + + + + + + + + + + + Unmount Internal Storage + + INTERNAL + + + + + + + + + + Mount SD-Ext + + /sd-ext + + + + + + + Unmount SD-Ext + + /sd-ext + + + + + + + + + + Mount Boot + + /boot + + + + + + + + + + Unmount Boot + + /boot + + + + + + + + + + Using external SD + + external + + + + + + + + + + Using external SD + + external + + + + + + + + + + Using internal storage + + internal + + + + + + + + + + Using internal storage + + internal + + + + + main + + + + + main + + + + + + + + + + + + USB Storage Mounted -- Be sure to safely remove your device from your computer before unmounting! + + + + + + + + + + + + Unmount + + usb_umount + + + + usb + + + + + + + + usb + + + + mount + + + + + + + + + + + + Wipe Menu + + + + + + Cache + + + tw_back=wipe + tw_action=wipe + tw_action_param=/cache + tw_text1=Wipe Cache? + tw_action_text1=Wiping Cache... + tw_complete_text1=Cache Wipe Complete + tw_slider_text=Swipe to Wipe + confirm_action + + + + + + + Dalvik Cache + + + tw_back=wipe + tw_action=wipe + tw_action_param=dalvik + tw_text1=Wipe Dalvik-Cache? + tw_action_text1=Wiping Dalvik-Cache... + tw_complete_text1=Dalvik-Cache Wipe Complete + tw_slider_text=Swipe to Wipe + confirm_action + + + + + + + Factory Reset + + + tw_back=wipe + tw_action=wipe + tw_action_param=data + tw_text1=Factory Reset? + tw_text2=(Wipes Data and Cache) + tw_action_text1=Factory Reset... + tw_complete_text1=Factory Reset Complete + tw_slider_text=Swipe to Wipe + confirm_action + + + + + + + System + + + tw_back=wipe + tw_action=wipe + tw_action_param=/system + tw_text1=Wipe System? + tw_text2=This will wipe your ROM + tw_action_text1=Wiping System... + tw_complete_text1=System Wipe Complete + tw_slider_text=Swipe to Wipe + confirm_action + + + + + + + + External Storage + + + tw_back=wipe + tw_action=wipe + tw_action_param=EXTERNAL + tw_has_action2=1 + tw_action2=set + tw_action2_param=tw_zip_location=/sdcard + tw_text1=Wipe External Storage (SD card)? + tw_action_text1=Wiping External Storage... + tw_complete_text1=External Storage Wipe Complete + tw_slider_text=Swipe to Wipe + confirm_action + + + + + + + + Internal Storage + + + tw_back=wipe + tw_action=wipe + tw_action_param=INTERNAL + tw_has_action2=1 + tw_action2=set + tw_action2_param=tw_zip_location=/sdcard + tw_text1=Wipe Internal Storage? + tw_action_text1=Wiping Internal Storage... + tw_complete_text1=Internal Storage Wipe Complete + tw_slider_text=Swipe to Wipe + confirm_action + + + + + + + + + + + Format Data + + + tw_back=wipe + tw_action=wipe + tw_action_param=DATAMEDIA + tw_has_action2=1 + tw_action2=set + tw_action2_param=tw_zip_location=/sdcard + tw_text1=Format Data? (This wipes all media + tw_text2=including backups & removes encryption) + tw_text3=Most of the time you do not need to do this. + tw_action_text1=Formatting Data... + tw_complete_text1=Data Format Complete + tw_slider_text=Swipe to Format + tw_show_exclamation=1 + confirm_action + + + + + + + + Android Secure + + + tw_back=wipe + tw_action=wipe + tw_action_param=ANDROIDSECURE + tw_text1=Wipe Android Secure? + tw_action_text1=Wiping Android Secure... + tw_complete_text1=Wipe Android Secure Complete + tw_slider_text=Swipe to Format + confirm_action + + + + + + + + SD Ext + + + tw_back=wipe + tw_action=wipe + tw_action_param=/sd-ext + tw_text1=Wipe SD-Ext? + tw_action_text1=Wiping SD-Ext... + tw_complete_text1=SD-Ext Wipe Complete + tw_slider_text=Swipe to Wipe + confirm_action + + + + + + main + + + + + main + + + + + + + + + + + + Back Up Device + + + + + + Free Space: %tw_storage_free_size% MB + + + + + + Backup Name: %tw_backup_name% + + + + + + System (%tw_backup_system_size% MB) + + + + + + + + Data (%tw_backup_data_size% MB) + + + + + + + + + Boot (%tw_backup_boot_size% MB) + + + + + + + + + Recovery (%tw_backup_recovery_size% MB) + + + + + + + + Cache (%tw_backup_cache_size% MB) + + + + + + + + + .android_secure (%tw_backup_andsec_size% MB) + + + + + + + + + sd-ext (%tw_backup_sdext_size% MB) + + + + + + + + + %tw_sp1_name% (%tw_backup_sp1_size% MB) + + + + + + + + + %tw_sp2_name% (%tw_backup_sp2_size% MB) + + + + + + + + + %tw_sp3_name% (%tw_backup_sp3_size% MB) + + + + + + + + Enable Compression (Requires more time) + + + + + + + + Skip MD5 generation on backups + + + + + + + + + + + + Using external SD + + external + + + + + + + + + + Using external SD + + external + + + + + + + + + + Using internal storage + + internal + + + + + + + + + + Using internal storage + + internal + + + + + + + tw_operation_state=0 + backup_run + + + + + + + Swipe to Back Up + + + + + + Refresh Sizes + + + + + + + + Set Backup Name + + + tw_fileexists=0 + backupname1 + + + + + + main + + + + + main + + + + + + + + + tw_backup_name= + + + + backupname2 + + + + + + + + + + Please Enter a Backup Name + + + + + + + + %tw_backup_name% + + + + tw_filecheck=%tw_backups_folder%/%tw_backup_name% + tw_existpage=backupname2 + tw_notexistpage=backup + filecheck + + + + + + + + A backup with that name already exists! + + + + + + Cancel / Clear + + + tw_backup_name=(Current Date) + backup + + + + + + + + + tw_backup_name=(Current Date) + main + + + + + + + tw_backup_name=(Current Date) + backup + + + + + + + + + + + + + %tw_operation% %tw_partition% + + + + + + + + backup + + + + + + tw_back=backup + tw_complete_text1=Backup Complete + tw_show_reboot=1 + action_complete + + + + + + + + + + + + + + + + + Using external SD + + external + + + + + + + + + + Using external SD + + external + + + + + + + + + + Using internal storage + + internal + + + + + + + + + + Using internal storage + + internal + + + + +
+ Select Package to Restore: + + + + + + + + + +
+ + + + + + + + restore_select + + + + + + main + + + + + main + + + + + + + + + + + + Package to Restore: %tw_restore_name% + + + + + + Package Date: %tw_restore_file_date% + + + + + + System + + + + + + + + + Data + + + + + + + + + Boot + + + + + + + + + Cache + + + + + + + + + .android_secure + + + + + + + + + sd-ext + + + + + + + + + %tw_sp1_name% + + + + + + + + + %tw_sp2_name% + + + + + + + + + %tw_sp3_name% + + + + + + + + + Enable MD5 checking of backup files + + + + + + + + Rename Backup + + + tw_backup_rename= + tw_fileexists=0 + renamebackup + + + + + + + Delete Backup + + + tw_back=restore + tw_action=cmd + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" + tw_text1=Delete Backup? %tw_restore_name% + tw_text2=This cannot be undone! + tw_action_text1=Deleting Backup... + tw_complete_text1=Backup Delete Complete + tw_slider_text=Swipe to Delete + confirm_action + + + + + + + restore_run + + + + + + Swipe to Restore + + + + + main + + + + + restore + + + + + + + + + + + + Please Enter a New Backup Name + + + + + + + + %tw_backup_rename% + + + + tw_back=restore + tw_action=cmd + tw_action_param=cd %tw_backups_folder% && mv %tw_restore_name% %tw_backup_rename% + tw_text1=Rename Backup? + tw_text2=This cannot be undone! + tw_action_text1=Renaming Backup... + tw_complete_text1=Backup Rename Complete + tw_slider_text=Swipe to Rename + tw_filecheck=%tw_backups_folder%/%tw_backup_rename% + tw_existpage=renamebackup + tw_notexistpage=confirm_action + filecheck + + + + + + + + A backup with that name already exists! + + + + + + Cancel + + restore_select + + + + + + + main + + + + + restore_select + + + + + + + + + + + + %tw_operation% %tw_partition% + + + + + + + + + + tw_back=restore_select + tw_complete_text1=Restore Complete + tw_show_reboot=1 + action_complete + + + + + restore + + + + + + + + + + Settings + + + + + + Zip file signature verification? + + + + + + + + Force MD5 check on all zips? + + + + + + + + Use rm -rf instead of formatting? + + + + + + + + Skip MD5 generation on backups + + + + + + + + Enable MD5 checking of backup files + + + + + + + + Ignore image size errors during backup + + + + + + + + Simulate most actions for theme testing + + + + + + + + + Simulate failure for actions + + + + + + + + Time Zone + + timezone + + + + + + Restore Defaults + + + + + + + main + + + + + main + + + + + + + + + + + + Select Time Zone + + + + + + + + + BST11;BDT + HST10;HDT + AST9;ADT + PST8;PDT + MST7;MDT + CST6;CDT + EST5;EDT + AST4;ADT + GRNLNDST3;GRNLNDDT + FALKST2;FALKDT + AZOREST1;AZOREDT + GMT0;BST + NFT-1;DFT + WET-2;WET + SAUST-3;SAUDT + WST-4;WDT + PAKST-5;PAKDT + TASHST-6;TASHDT + THAIST-7;THAIDT + TAIST-8;TAIDT + JST-9;JSTDT + EET-10;EETDT + MET-11;METDT + NZST-12;NZDT + + + + + + Do you use daylight savings time (DST)? + + + + + + + + Offset (usually 0): %tw_time_zone_guioffset% + + + + + + 0 + + tw_time_zone_guioffset=0 + + + + + + 15 + + tw_time_zone_guioffset=15 + + + + + + 30 + + tw_time_zone_guioffset=30 + + + + + + 45 + + tw_time_zone_guioffset=45 + + + + + + Set Time Zone + + + + + + + + Current Time Zone: %tw_time_zone% + + + + + main + + + + + settings + + + + + + + + + + + + Advanced + + + + + + Copy Log to SD + + + tw_back=advanced + tw_action=copylog + tw_text1=Copy Log to SD Card? + tw_action_text1=Copying Log to SD Card... + tw_complete_text1=Log Copy Complete + tw_slider_text=Swipe to Confirm + confirm_action + + + + + + + Fix Permissions + + + tw_back=advanced + tw_action=fixpermissions + tw_text1=Fix Permissions? + tw_action_text1=Fixing Permissions... + tw_complete_text1=Fix Permissions Complete + tw_slider_text=Swipe to Confirm + tw_show_reboot=1 + confirm_action + + + + + + + Terminal Command + + terminalfolder + + + + + + ADB Sideload + + + tw_back=advanced + tw_action=adbsideload + tw_action_text1=ADB Sideload + tw_action_text2=Usage: adb sideload filename.zip + tw_complete_text1=ADB Sideload Complete + tw_has_cancel=1 + tw_cancel_action=adbsideloadcancel + tw_show_reboot=1 + action_page + + + + + + + + Partition SD Card + + partsdcard + + + + + + File Manager + + filemanagerlist + + + + + + Reload Theme + + + + + + + + + HTC Dumlock + + htcdumlock + + + + + main + + + + + main + + + + + + + + + + + + Partition SD Card + + + + + + + + tw_sdext_size-128 + + + + + + + + tw_sdext_size+128 + + + + + + EXT Size: %tw_sdext_size% + + + + + + + + tw_swap_size-32 + + + + + + + + tw_swap_size+32 + + + + + + Swap Size: %tw_swap_size% + + + + + + File system: %tw_sdpart_file_system% + + + + + + EXT3 + + tw_sdpart_file_system=ext3 + + + + + + + EXT4 + + tw_sdpart_file_system=ext4 + + + + + + You will lose all files on your SD card! + + + + + + This action cannot be undone! + + + + + + + tw_back=partsdcard + tw_action=partitionsd + tw_has_action2=1 + tw_action2=set + tw_action2_param=tw_zip_location=/sdcard + tw_action_text1=Partitioning SD Card... + tw_action_text2=This will take a few minutes. + tw_complete_text1=Partitioning Complete + action_page + + + + + + + Swipe to Confirm Partition + + + + + main + + + + + advanced + + + + + + + + + + + + + HTC Dumlock + + + + + + + Restore Original Boot + + + tw_back=htcdumlock + tw_action=htcdumlockrestoreboot + tw_text1=Restore original boot image? + tw_action_text1=Restoring Original Boot... + tw_complete_text1=Restore Original Boot Complete + tw_slider_text=Swipe to Confirm + confirm_action + + + + + + + + Reflash Recovery->Boot + + + tw_back=htcdumlock + tw_action=htcdumlockreflashrecovery + tw_text1=Reflash recovery to boot? + tw_action_text1=Flashing recovery to boot... + tw_complete_text1=Recovery Flash to Boot Complete + tw_slider_text=Swipe to Confirm + confirm_action + + + + + + + + Install HTC Dumlock + + + tw_back=htcdumlock + tw_action=installhtcdumlock + tw_text1=Install HTC dumlock files to ROM? + tw_action_text1=Installing HTC Dumlock... + tw_complete_text1=HTC Dumlock Install Complete + tw_slider_text=Swipe to Confirm + confirm_action + + + + + + main + + + + + advanced + + + + + + + + + + + + + + + + + + + + + + + Swipe to Unlock + + + + + + + + + + + File Manager: Select a File or Folder + + + + +
+ Folders: + + + + + + + + + +
+ + + +
+ %tw_file_location1% + + + + + + + + + +
+ + + + + + tw_fm_type=File + tw_fm_isfolder=0 + + + + + + main + + + + + advanced + + + + + + filemanageroptions + + + + + + + Select Folder + + + tw_filename1=tw_file_location1 + tw_fm_isfolder=1 + tw_fm_type=Folder + filemanageroptions + + + + + + + + + + + + + %tw_fm_type% Selected: + + + + + + %tw_filename1% + + + + + + + Copy File + + + tw_filemanager_command=cp + tw_fm_text1=Copying + choosedestinationfolder + + + + + + + + Copy Folder + + + tw_filemanager_command=cd "%tw_file_location1%" && cd .. && cp -R + tw_fm_text1=Copying + choosedestinationfolder + + + + + + + Move + + + tw_filemanager_command=mv + tw_fm_text1=Moving + choosedestinationfolder + + + + + + + chmod 755 + + + tw_filemanager_command=chmod 755 + tw_fm_text1=chmod 755 + tw_fm_text2= + tw_fm_text3= + tw_include_text3=0 + tw_back=filemanageroptions + filemanagerconfirm + + + + + + + chmod + + + tw_filemanager_rename=0000 + tw_fm_text2= + tw_fm_text3= + tw_include_text3=0 + tw_back=filemanageroptions + filemanagerchmod + + + + + + + Delete + + + tw_filemanager_command=rm -rf + tw_fm_text1=Deleting + tw_fm_text2= + tw_fm_text3= + tw_include_text3=0 + tw_back=filemanageroptions + filemanagerconfirm + + + + + + + + Rename File + + + tw_filemanager_rename=tw_selection1 + tw_fm_text1=Renaming + tw_filemanager_command=mv + filemanagerrenamefile + + + + + + + + Rename Folder + + + tw_filemanager_rename=tw_selection1 + tw_fm_text1=Renaming + tw_filemanager_command=cd "%tw_file_location1%" && cd .. && mv + filemanagerrenamefolder + + + + + + main + + + + + filemanagerlist + + + + + + + + + + + + Browse to Destination Folder & Press Select + + + + +
+ %tw_file_location2% + + + + + + + + +
+ + + + + + main + + + + + filemanageroptions + + + + + + Select Folder + + + tw_fm_text2=to + tw_fm_text3=%tw_file_location2% + tw_include_text3=1 + tw_back=filemanageroptions + filemanagerconfirm + + + + + + + + + + + + + Please Enter a New %tw_fm_type% Name + + + + + + + + %tw_filemanager_rename% + + + + tw_fm_text2=to + tw_fm_text3="%tw_file_location1%/%tw_filemanager_rename%" + tw_include_text3=1 + tw_back=filemanageroptions + filemanagerconfirm + + + + + + + Cancel + + filemanageroptions + + + + + + + main + + + + + filemanageroptions + + + + + + + + + + + + Please Enter a New %tw_fm_type% Name + + + + + + + + %tw_filemanager_rename% + + + + tw_fm_text2=to + tw_fm_text3=%tw_filemanager_rename% + tw_include_text3=1 + tw_back=filemanageroptions + filemanagerconfirm + + + + + + + Cancel + + filemanageroptions + + + + + + + main + + + + + filemanageroptions + + + + + + + + + + + + Please Enter New Permissions + + + + + + + + %tw_filemanager_rename% + + + + tw_filemanager_command=chmod %tw_filemanager_rename% + tw_fm_text1=chmod %tw_filemanager_rename% + tw_back=filemanageroptions + filemanagerconfirm + + + + + + + Cancel + + filemanageroptions + + + + + + + main + + + + + filemanageroptions + + + + + + + + + + + + %tw_fm_text1% + + + + + + %tw_filename1% + + + + + + %tw_fm_text2% + + + + + + %tw_fm_text3% + + + + + + Press back button to cancel. + + + + + + filemanageracction + + + + + + Swipe to Confirm + + + + + %tw_back% + + + + + main + + + + + + + + + + + + %tw_fm_text1% + + + + + + + + + + + + + tw_back=filemanagerlist + tw_complete_text1=File Operation Complete + action_complete + + + + + + + + + + tw_complete_text1=File Operation Complete + action_complete + + + + + + + %tw_filemanager_command% "%tw_filename1%" + + + + + + + %tw_filemanager_command% "%tw_filename1%" "%tw_fm_text3%" + + + + + + + + + + + Please Enter Your Password + + + + + + + + %tw_crypto_display% + + + + trydecrypt + + + + + + + + Password Failed, Please Try Again + + + + + + Cancel + + + main + + + + + + + + + main + + + + + + + main + + + + + + + + + + + + + Trying Decryption with Your Password + + + + + + + + + + + + + + + + + tw_password_fail=1 + decrypt + + + + + + + + + main + + + + + + + + + + Browse to Starting Folder + + + + +
+ %tw_terminal_location% + + + + + + + + + +
+ + + + + + main + + + + + advanced + + + + + + Select Folder + + + terminalcommand + + + + + + + + + + + + + + + + + + + Starting Path: %tw_terminal_location% + + + + + + + + + %tw_terminal_command% + + + %tw_terminal_command% + + + + + + + KILL + + + + + + + + + + + home + + + + + + + + + back + + + + + lock + + + + + + + main + + + + + terminalfolder + + + + diff --git a/gui/devices/320x480/res/ui.xml b/gui/devices/320x480/res/ui.xml index 04807cdbb..1d31719cf 100644 --- a/gui/devices/320x480/res/ui.xml +++ b/gui/devices/320x480/res/ui.xml @@ -1680,7 +1680,7 @@ tw_back=restore tw_action=cmd - tw_action_param=cd %tw_backups_folder% && rm -rf %tw_restore_name% + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" tw_text1=Delete Backup? %tw_restore_name% tw_text2=This cannot be undone! tw_action_text1=Deleting Backup... diff --git a/gui/devices/480x800/res/ui.xml b/gui/devices/480x800/res/ui.xml index 5ac411310..a8eee606d 100644 --- a/gui/devices/480x800/res/ui.xml +++ b/gui/devices/480x800/res/ui.xml @@ -1679,7 +1679,7 @@ tw_back=restore tw_action=cmd - tw_action_param=cd %tw_backups_folder% && rm -rf %tw_restore_name% + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" tw_text1=Delete Backup? %tw_restore_name% tw_text2=This cannot be undone! tw_action_text1=Deleting Backup... diff --git a/gui/devices/480x854/res/ui.xml b/gui/devices/480x854/res/ui.xml index 7593601d8..13629b46e 100644 --- a/gui/devices/480x854/res/ui.xml +++ b/gui/devices/480x854/res/ui.xml @@ -1678,7 +1678,7 @@ tw_back=restore tw_action=cmd - tw_action_param=cd %tw_backups_folder% && rm -rf %tw_restore_name% + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" tw_text1=Delete Backup? %tw_restore_name% tw_text2=This cannot be undone! tw_action_text1=Deleting Backup... diff --git a/gui/devices/540x960/res/ui.xml b/gui/devices/540x960/res/ui.xml index 587ccc72c..d58691249 100644 --- a/gui/devices/540x960/res/ui.xml +++ b/gui/devices/540x960/res/ui.xml @@ -1679,7 +1679,7 @@ tw_back=restore tw_action=cmd - tw_action_param=cd %tw_backups_folder% && rm -rf %tw_restore_name% + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" tw_text1=Delete Backup? %tw_restore_name% tw_text2=This cannot be undone! tw_action_text1=Deleting Backup... diff --git a/gui/devices/720x1280/res/ui.xml b/gui/devices/720x1280/res/ui.xml index 1c16783ac..e3dd6ac62 100644 --- a/gui/devices/720x1280/res/ui.xml +++ b/gui/devices/720x1280/res/ui.xml @@ -1684,7 +1684,7 @@ tw_back=restore tw_action=cmd - tw_action_param=cd %tw_backups_folder% && rm -rf %tw_restore_name% + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" tw_text1=Delete Backup? %tw_restore_name% tw_text2=This cannot be undone! tw_action_text1=Deleting Backup... diff --git a/gui/devices/800x1280/res/ui.xml b/gui/devices/800x1280/res/ui.xml index 0a9290e3c..37f4c1e96 100755 --- a/gui/devices/800x1280/res/ui.xml +++ b/gui/devices/800x1280/res/ui.xml @@ -1680,7 +1680,7 @@ tw_back=restore tw_action=cmd - tw_action_param=cd %tw_backups_folder% && rm -rf %tw_restore_name% + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" tw_text1=Delete Backup? %tw_restore_name% tw_text2=This cannot be undone! tw_action_text1=Deleting Backup... diff --git a/gui/devices/800x480/res/ui.xml b/gui/devices/800x480/res/ui.xml index 53530d58e..302388aca 100755 --- a/gui/devices/800x480/res/ui.xml +++ b/gui/devices/800x480/res/ui.xml @@ -2198,7 +2198,7 @@ tw_back=restore tw_action=cmd - tw_action_param=cd %tw_backups_folder% && rm -rf %tw_restore_name% + tw_action_param=cd %tw_backups_folder% && rm -rf "%tw_restore_name%" tw_text1=Delete Backup? %tw_restore_name% tw_text2=This cannot be undone! tw_action_text1=Deleting Backup... diff --git a/partition.cpp b/partition.cpp index c9b10dab5..8aa7f0ae9 100644 --- a/partition.cpp +++ b/partition.cpp @@ -183,15 +183,20 @@ bool TWPartition::Process_Fstab_Line(string Line, bool Display_Error) { Has_Data_Media = true; Is_Storage = true; Storage_Path = "/data/media"; + Symlink_Path = Storage_Path; if (strcmp(EXPAND(TW_EXTERNAL_STORAGE_PATH), "/sdcard") == 0) { Make_Dir("/emmc", Display_Error); - Symlink_Path = "/data/media"; Symlink_Mount_Point = "/emmc"; } else { Make_Dir("/sdcard", Display_Error); - Symlink_Path = "/data/media"; Symlink_Mount_Point = "/sdcard"; } + if (Mount(false) && TWFunc::Path_Exists("/data/media/0")) { + Storage_Path = "/data/media/0"; + Symlink_Path = Storage_Path; + DataManager::SetValue(TW_INTERNAL_PATH, "/data/media/0"); + UnMount(true); + } #endif #ifdef TW_INCLUDE_CRYPTO Can_Be_Encrypted = true; @@ -1054,24 +1059,27 @@ bool TWPartition::Wipe_Data_Without_Wiping_Media() { return false; ui_print("Wiping data without wiping /data/media ...\n"); - system("rm -f /data/*"); - system("rm -f /data/.*"); DIR* d; d = opendir("/data"); - if (d != NULL) - { + if (d != NULL) { struct dirent* de; while ((de = readdir(d)) != NULL) { - if (strcmp(de->d_name, "media") == 0) continue; + if (strcmp(de->d_name, ".") == 0 || strcmp(de->d_name, "..") == 0) continue; + // The media folder is the "internal sdcard" + // The .layout_version file is responsible for determining whether 4.2 decides up upgrade + // the media folder for multi-user. + if (strcmp(de->d_name, "media") == 0 || strcmp(de->d_name, ".layout_version") == 0) continue; sprintf(cmd, "rm -fr /data/%s", de->d_name); system(cmd); } closedir(d); + ui_print("Done.\n"); + return true; } - ui_print("Done.\n"); - return true; + ui_print("Dirent failed to open /data, error!\n"); + return false; } bool TWPartition::Backup_Tar(string backup_folder) { diff --git a/partitionmanager.cpp b/partitionmanager.cpp index a8e7ec179..57e110867 100644 --- a/partitionmanager.cpp +++ b/partitionmanager.cpp @@ -1582,6 +1582,15 @@ int TWPartitionManager::Decrypt_Device(string Password) { ui_print("Data successfully decrypted, new block device: '%s'\n", crypto_blkdev); // Sleep for a bit so that the device will be ready sleep(1); +#ifdef RECOVERY_SDCARD_ON_DATA + if (dat->Mount(false) && TWFunc::Path_Exists("/data/media/0")) { + dat->Storage_Path = "/data/media/0"; + dat->Symlink_Path = dat->Storage_Path; + DataManager::SetValue(TW_INTERNAL_PATH, "/data/media/0"); + dat->UnMount(false); + DataManager::SetBackupFolder(); + } +#endif Update_System_Details(); UnMount_Main_Partitions(); } else diff --git a/variables.h b/variables.h index 5bcd7ec77..c3c99bd97 100644 --- a/variables.h +++ b/variables.h @@ -17,7 +17,7 @@ #ifndef _VARIABLES_HEADER_ #define _VARIABLES_HEADER_ -#define TW_VERSION_STR "2.3.1.3" +#define TW_VERSION_STR "2.3.2.0" #define TW_USE_COMPRESSION_VAR "tw_use_compression" #define TW_IGNORE_IMAGE_SIZE "tw_ignore_image_size" -- cgit v1.2.3