diff --git a/Android.mk b/Android.mk
index df18d7a7..12b07699 100755
--- a/Android.mk
+++ b/Android.mk
@@ -281,6 +281,9 @@ endif
ifeq ($(TW_HAS_DOWNLOAD_MODE), true)
LOCAL_CFLAGS += -DTW_HAS_DOWNLOAD_MODE
endif
+ifeq ($(TW_HAS_EDL_MODE), true)
+ LOCAL_CFLAGS += -DTW_HAS_EDL_MODE
+endif
ifeq ($(TW_NO_SCREEN_BLANK), true)
LOCAL_CFLAGS += -DTW_NO_SCREEN_BLANK
endif
diff --git a/data.cpp b/data.cpp
index 0ece4e79..cf9dd247 100755
--- a/data.cpp
+++ b/data.cpp
@@ -722,6 +722,10 @@ void DataManager::SetDefaultValues()
printf("TW_HAS_DOWNLOAD_MODE := true\n");
mConst.SetValue(TW_DOWNLOAD_MODE, "1");
#endif
+#ifdef TW_HAS_EDL_MODE
+ printf("TW_HAS_EDL_MODE := true\n");
+ mConst.SetValue(TW_EDL_MODE, "1");
+#endif
#ifdef TW_INCLUDE_CRYPTO
mConst.SetValue(TW_HAS_CRYPTO, "1");
printf("TW_INCLUDE_CRYPTO := true\n");
diff --git a/gui/theme/common/landscape.xml b/gui/theme/common/landscape.xml
index d1bce168..6df88625 100755
--- a/gui/theme/common/landscape.xml
+++ b/gui/theme/common/landscape.xml
@@ -2705,6 +2705,25 @@
+
+
main
diff --git a/gui/theme/common/languages/cz.xml b/gui/theme/common/languages/cz.xml
index 4ba5c2cf..7f7fc3cb 100644
--- a/gui/theme/common/languages/cz.xml
+++ b/gui/theme/common/languages/cz.xml
@@ -262,6 +262,7 @@
Recovery
Bootloader
Stáhnout
+ Edl
Vypínání...
Potáhnout pro vypnutí
Vypnout
diff --git a/gui/theme/common/languages/de.xml b/gui/theme/common/languages/de.xml
index 6ff80145..56f7ebd9 100644
--- a/gui/theme/common/languages/de.xml
+++ b/gui/theme/common/languages/de.xml
@@ -283,6 +283,7 @@
Recovery
Bootloader
Download
+ Edl
Ausschalten...
Gerät ausschalten
Ausschalten
diff --git a/gui/theme/common/languages/el.xml b/gui/theme/common/languages/el.xml
index ffb960f5..8ac681d2 100644
--- a/gui/theme/common/languages/el.xml
+++ b/gui/theme/common/languages/el.xml
@@ -273,6 +273,7 @@
Recovery
Bootloader
Λήψη
+ Edl
Απενεργοποίηση...
Σύρετε για Απενεργοποίηση
Απενεργοποίηση
diff --git a/gui/theme/common/languages/en.xml b/gui/theme/common/languages/en.xml
index f8de6622..e61f6c0a 100755
--- a/gui/theme/common/languages/en.xml
+++ b/gui/theme/common/languages/en.xml
@@ -288,6 +288,7 @@
Recovery
Bootloader
Download
+ Edl
Turning Off...
Swipe to Power Off
Power Off
diff --git a/gui/theme/common/languages/es.xml b/gui/theme/common/languages/es.xml
index 1f200618..e096e660 100644
--- a/gui/theme/common/languages/es.xml
+++ b/gui/theme/common/languages/es.xml
@@ -263,6 +263,7 @@
Recovery
Bootloader
Descarga
+ Edl
Apagando...
Deslice para Apagar
Apagar
diff --git a/gui/theme/common/languages/fr.xml b/gui/theme/common/languages/fr.xml
index 61516a8d..6ae3298e 100644
--- a/gui/theme/common/languages/fr.xml
+++ b/gui/theme/common/languages/fr.xml
@@ -260,6 +260,7 @@
Récupération
Amorçage
Télécharger
+ Edl
Arrêt en cours...
Glisser pour éteindre
Éteindre
diff --git a/gui/theme/common/languages/hu.xml b/gui/theme/common/languages/hu.xml
index 6141cdee..96557ac7 100644
--- a/gui/theme/common/languages/hu.xml
+++ b/gui/theme/common/languages/hu.xml
@@ -283,6 +283,7 @@
Recovery
Bootloader
Download mód
+ Edl
Kikapcsolás...
Csúsztasson a kikapcsoláshoz
Kikapcsolás
diff --git a/gui/theme/common/languages/it.xml b/gui/theme/common/languages/it.xml
index 6d56e80c..ec74d59a 100644
--- a/gui/theme/common/languages/it.xml
+++ b/gui/theme/common/languages/it.xml
@@ -283,6 +283,7 @@
Recovery
Bootloader
Download
+ Edl
Spegnimento in corso...
Scorri per spegnere
Spegni
diff --git a/gui/theme/common/languages/nl.xml b/gui/theme/common/languages/nl.xml
index f5ec9bb5..8dadd40a 100644
--- a/gui/theme/common/languages/nl.xml
+++ b/gui/theme/common/languages/nl.xml
@@ -270,6 +270,7 @@
Recovery
Bootloader
Download
+ Edl
Uitschakelen...
Veeg om uit te schakelen
Uitschakelen
diff --git a/gui/theme/common/languages/pl.xml b/gui/theme/common/languages/pl.xml
index a67de069..e337455a 100644
--- a/gui/theme/common/languages/pl.xml
+++ b/gui/theme/common/languages/pl.xml
@@ -270,6 +270,7 @@
Recovery
Bootloader
Download
+ Edl
Wyłączanie...
Przesuń, aby wyłączyć
Wyłącz
diff --git a/gui/theme/common/languages/pt_BR.xml b/gui/theme/common/languages/pt_BR.xml
index 88deb0c2..f540e4c4 100644
--- a/gui/theme/common/languages/pt_BR.xml
+++ b/gui/theme/common/languages/pt_BR.xml
@@ -262,6 +262,7 @@
Recuperação
Bootloader
Baixar
+ Edl
Desligar...
Deslize para desligar
Desligar
diff --git a/gui/theme/common/languages/pt_PT.xml b/gui/theme/common/languages/pt_PT.xml
index 6b5bc6c1..40ef41f8 100644
--- a/gui/theme/common/languages/pt_PT.xml
+++ b/gui/theme/common/languages/pt_PT.xml
@@ -284,6 +284,7 @@
Recovery
Bootloader
Descarregar
+ Edl
A desligar...
Deslize para desligar
Desligar
diff --git a/gui/theme/common/languages/ru.xml b/gui/theme/common/languages/ru.xml
index ba4d9301..95fd3718 100644
--- a/gui/theme/common/languages/ru.xml
+++ b/gui/theme/common/languages/ru.xml
@@ -280,6 +280,7 @@
Рекавери
Загрузчик
Режим загрузки
+ Edl
Выключение...
Свайп для выключения
Выключение
diff --git a/gui/theme/common/languages/sk.xml b/gui/theme/common/languages/sk.xml
index b8e2fc52..f4e56ef9 100644
--- a/gui/theme/common/languages/sk.xml
+++ b/gui/theme/common/languages/sk.xml
@@ -262,6 +262,7 @@
Recovery
Bootloader
Stiahnuť
+ Edl
Vypínanie...
Potiahnite pre vypnutie
Vypnúť
diff --git a/gui/theme/common/languages/sl.xml b/gui/theme/common/languages/sl.xml
index 5b0853e9..4259e625 100644
--- a/gui/theme/common/languages/sl.xml
+++ b/gui/theme/common/languages/sl.xml
@@ -262,6 +262,7 @@
Obnovitev
Zagonski nalagalnik
Prejmi
+ Edl
Izklapljanje …
Povlecite za izklop
Izklopi
diff --git a/gui/theme/common/languages/sv.xml b/gui/theme/common/languages/sv.xml
index eadc18d8..c8989577 100644
--- a/gui/theme/common/languages/sv.xml
+++ b/gui/theme/common/languages/sv.xml
@@ -101,6 +101,7 @@
System
Bootloader
Ladda ner
+ Edl
Stänger av...
Inställningar
Allmänt
diff --git a/gui/theme/common/languages/tr.xml b/gui/theme/common/languages/tr.xml
index 4c10fdf4..8e924cb5 100644
--- a/gui/theme/common/languages/tr.xml
+++ b/gui/theme/common/languages/tr.xml
@@ -284,6 +284,7 @@
Recovery
Bootloader
Download
+ Edl
Kapatılıyor...
Kapatmak için Kaydır
Kapat
diff --git a/gui/theme/common/languages/uk.xml b/gui/theme/common/languages/uk.xml
index a3ea7ddd..9b267d26 100644
--- a/gui/theme/common/languages/uk.xml
+++ b/gui/theme/common/languages/uk.xml
@@ -266,6 +266,7 @@
Рекавері
Завантажувач
Режим завантаження
+ Edl
Вимкнення...
Вимкнути
Вимкнення
diff --git a/gui/theme/common/portrait.xml b/gui/theme/common/portrait.xml
index 1cf4d898..c2d32dd3 100755
--- a/gui/theme/common/portrait.xml
+++ b/gui/theme/common/portrait.xml
@@ -2862,6 +2862,25 @@
+
+
diff --git a/gui/theme/common/watch.xml b/gui/theme/common/watch.xml
index 56bdc553..0c30a349 100755
--- a/gui/theme/common/watch.xml
+++ b/gui/theme/common/watch.xml
@@ -3359,6 +3359,24 @@
rebootcheck
+
diff --git a/gui/theme/extra-languages/languages/ja.xml b/gui/theme/extra-languages/languages/ja.xml
index 37d3e7c7..977b1708 100644
--- a/gui/theme/extra-languages/languages/ja.xml
+++ b/gui/theme/extra-languages/languages/ja.xml
@@ -265,6 +265,7 @@
リカバリ
ブートローダー
ダウンロード
+ Edl
電源を切っています...
スワイプで電源を切る
電源を切る
diff --git a/gui/theme/extra-languages/languages/zh_CN.xml b/gui/theme/extra-languages/languages/zh_CN.xml
index 5c214a56..944be48b 100644
--- a/gui/theme/extra-languages/languages/zh_CN.xml
+++ b/gui/theme/extra-languages/languages/zh_CN.xml
@@ -283,6 +283,7 @@
Recovery
Bootloader
Download
+ Edl
正在关机…
滑动按钮确认关机
关机
diff --git a/gui/theme/extra-languages/languages/zh_TW.xml b/gui/theme/extra-languages/languages/zh_TW.xml
index 75c717ac..fc80862c 100644
--- a/gui/theme/extra-languages/languages/zh_TW.xml
+++ b/gui/theme/extra-languages/languages/zh_TW.xml
@@ -283,6 +283,7 @@
Recovery
Bootloader
Download
+ Edl
正在關機…
滑動按鈕確認關機
關機
diff --git a/openrecoveryscript.cpp b/openrecoveryscript.cpp
index d4d4da51..9478cd75 100755
--- a/openrecoveryscript.cpp
+++ b/openrecoveryscript.cpp
@@ -343,6 +343,8 @@ int OpenRecoveryScript::run_script_file(void) {
TWFunc::tw_reboot(rb_bootloader);
else if (strlen(value) && strcmp(value, "download") == 0)
TWFunc::tw_reboot(rb_download);
+ else if (strlen(value) && strcmp(value, "edl") == 0)
+ TWFunc::tw_reboot(rb_edl);
else
TWFunc::tw_reboot(rb_system);
} else if (strcmp(command, "cmd") == 0) {
diff --git a/twrp-functions.cpp b/twrp-functions.cpp
index 37dd0df4..ff34828e 100755
--- a/twrp-functions.cpp
+++ b/twrp-functions.cpp
@@ -625,6 +625,13 @@ int TWFunc::tw_reboot(RebootCommand command)
return property_set(ANDROID_RB_PROPERTY, "reboot,download");
#else
return __reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, LINUX_REBOOT_CMD_RESTART2, (void*) "download");
+#endif
+ case rb_edl:
+ check_and_run_script("/sbin/rebootedl.sh", "reboot edl");
+#ifdef ANDROID_RB_PROPERTY
+ return property_set(ANDROID_RB_PROPERTY, "reboot,edl");
+#else
+ return __reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, LINUX_REBOOT_CMD_RESTART2, (void*) "edl");
#endif
default:
return -1;
diff --git a/twrp-functions.hpp b/twrp-functions.hpp
index 7847aed4..efaa460d 100755
--- a/twrp-functions.hpp
+++ b/twrp-functions.hpp
@@ -37,6 +37,7 @@ typedef enum
rb_poweroff,
rb_bootloader, // May also be fastboot
rb_download,
+ rb_edl,
} RebootCommand;
enum Archive_Type {
diff --git a/twrp.cpp b/twrp.cpp
index 6b9cd755..95e376b5 100755
--- a/twrp.cpp
+++ b/twrp.cpp
@@ -345,6 +345,8 @@ int main(int argc, char **argv) {
TWFunc::tw_reboot(rb_bootloader);
else if (Reboot_Arg == "download")
TWFunc::tw_reboot(rb_download);
+ else if (Reboot_Arg == "edl")
+ TWFunc::tw_reboot(rb_edl);
else
TWFunc::tw_reboot(rb_system);
diff --git a/variables.h b/variables.h
index 22eb5c94..3b614326 100644
--- a/variables.h
+++ b/variables.h
@@ -129,6 +129,7 @@
#define TW_MIN_SYSTEM_SIZE "50" // minimum system size to allow a reboot
#define TW_MIN_SYSTEM_VAR "tw_min_system"
#define TW_DOWNLOAD_MODE "tw_download_mode"
+#define TW_EDL_MODE "tw_edl_mode"
#define TW_IS_ENCRYPTED "tw_is_encrypted"
#define TW_IS_DECRYPTED "tw_is_decrypted"
#define TW_CRYPTO_PWTYPE "tw_crypto_pwtype"