From e5d2c25ecf8aeaa1f1dee9215cb70b82a9f74d45 Mon Sep 17 00:00:00 2001 From: Tao Bao Date: Wed, 9 May 2018 11:05:44 -0700 Subject: recovery: Configure device menu based on runtime info. Drop the dependency on build time flag of AB_OTA_UPDATER when compiling device.cpp. Note that AB_OTA_UPDATER still guards the package install behavior (install.cpp). This can be extended to cover the entry of "Apply update from SD card". Test: Build and boot into recovery on angler and walleye respectively. Check the recovery menu. Change-Id: I36a6a6b4101ba61d4d374e32353c36cc5716f9ce --- device.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'device.h') diff --git a/device.h b/device.h index bf148f576..9c433715b 100644 --- a/device.h +++ b/device.h @@ -49,7 +49,7 @@ class Device { RUN_LOCALE_TEST = 12, }; - explicit Device(RecoveryUI* ui) : ui_(ui) {} + explicit Device(RecoveryUI* ui); virtual ~Device() {} // Returns a raw pointer to the RecoveryUI object. @@ -96,6 +96,10 @@ class Device { // here and return NO_ACTION. virtual BuiltinAction InvokeMenuItem(size_t menu_position); + // Removes the menu item for the given action. This allows tailoring the menu based on the + // runtime info, such as the availability of /cache or /sdcard. + virtual void RemoveMenuItemForAction(Device::BuiltinAction action); + // Called before and after we do a wipe data/factory reset operation, either via a reboot from the // main system with the --wipe_data flag, or when the user boots into recovery image manually and // selects the option from the menu, to perform whatever device-specific wiping actions as needed. -- cgit v1.2.3