aboutsummaryrefslogtreecommitdiffstats
path: root/device.h
diff options
context:
space:
mode:
Diffstat (limited to 'device.h')
-rw-r--r--device.h31
1 files changed, 18 insertions, 13 deletions
diff --git a/device.h b/device.h
index 1241982..dba4ac1 100644
--- a/device.h
+++ b/device.h
@@ -19,11 +19,15 @@
#include "ui.h"
+#include <stack>
+
#define KEY_FLAG_ABS 0x8000
+struct menu;
+
class Device : public VoldWatcher {
public:
- Device(RecoveryUI* ui) : ui_(ui) { }
+ explicit Device(RecoveryUI* ui);
virtual ~Device() { }
// Called to obtain the UI object that should be used to display
@@ -59,18 +63,17 @@ class Device : public VoldWatcher {
virtual int HandleMenuKey(int key, int visible);
enum BuiltinAction {
- NO_ACTION = 0,
- REBOOT = 1,
- APPLY_UPDATE = 2,
- // APPLY_CACHE was 3.
- // APPLY_ADB_SIDELOAD was 4.
- WIPE_DATA = 5,
- WIPE_CACHE = 6,
- WIPE_MEDIA = 7,
- REBOOT_BOOTLOADER = 8,
- SHUTDOWN = 9,
- VIEW_RECOVERY_LOGS = 10,
- MOUNT_SYSTEM = 11,
+ NO_ACTION,
+ REBOOT,
+ APPLY_UPDATE,
+ WIPE_DATA,
+ WIPE_FULL,
+ WIPE_CACHE,
+ REBOOT_RECOVERY,
+ REBOOT_BOOTLOADER,
+ SHUTDOWN,
+ VIEW_RECOVERY_LOGS,
+ MOUNT_SYSTEM,
};
// Return the list of menu items (an array of strings,
@@ -117,6 +120,8 @@ class Device : public VoldWatcher {
private:
RecoveryUI* ui_;
+
+ std::stack<const menu*> menu_stack;
};
// The device-specific library must define this function (or the