diff options
author | Koushik K. Dutta <koushd@gmail.com> | 2010-02-19 14:17:22 -0800 |
---|---|---|
committer | Koushik K. Dutta <koushd@gmail.com> | 2010-02-19 14:17:22 -0800 |
commit | a3c2f735d7681aa1c0a927f2d45e08d86656dd09 (patch) | |
tree | 9d3c7de38896bb980c60c91739e55e9ef3157f64 /default_recovery_ui.c | |
parent | 841b2bf352cd4c8596d8062d97200390c1dec84c (diff) | |
download | bootable_recovery-a3c2f735d7681aa1c0a927f2d45e08d86656dd09.zip bootable_recovery-a3c2f735d7681aa1c0a927f2d45e08d86656dd09.tar.gz bootable_recovery-a3c2f735d7681aa1c0a927f2d45e08d86656dd09.tar.bz2 |
fix up back button and menu toggling
Diffstat (limited to 'default_recovery_ui.c')
-rw-r--r-- | default_recovery_ui.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/default_recovery_ui.c b/default_recovery_ui.c index 991f376..2c39a78 100644 --- a/default_recovery_ui.c +++ b/default_recovery_ui.c @@ -18,6 +18,7 @@ #include "recovery_ui.h" #include "common.h" +#include "extendedcommands.h" char* MENU_HEADERS[] = { "Android system recovery utility", "", @@ -36,7 +37,8 @@ int device_toggle_display(volatile char* key_pressed, int key_code) { int alt = key_pressed[KEY_LEFTALT] || key_pressed[KEY_RIGHTALT]; if (alt && key_code == KEY_L) return 1; - return key_code == KEY_HOME || key_code == KEY_MENU || key_code == KEY_POWER || key_code == KEY_END; + // allow toggling of the display if the correct key is pressed, and the display toggle is allowed or the display is currently off + return get_allow_toggle_display() && (key_code == KEY_HOME || key_code == KEY_MENU || key_code == KEY_POWER || key_code == KEY_END); } int device_reboot_now(volatile char* key_pressed, int key_code) { @@ -57,9 +59,12 @@ int device_handle_key(int key_code, int visible) { case KEY_ENTER: case BTN_MOUSE: return SELECT_ITEM; - case KEY_BACKSPACE: + + case KEY_POWER: case KEY_END: - return GO_BACK; + case KEY_BACKSPACE: + if (!get_allow_toggle_display()) + return GO_BACK; } } |