diff options
-rw-r--r-- | README.md | 14 | ||||
-rw-r--r-- | default_device.cpp | 40 | ||||
-rw-r--r-- | recovery.cpp | 10 |
3 files changed, 44 insertions, 20 deletions
diff --git a/README.md b/README.md new file mode 100644 index 000000000..c0833f2d0 --- /dev/null +++ b/README.md @@ -0,0 +1,14 @@ +The Recovery Image +================== + +Quick turn-around testing +------------------------- + + mm -j + m ramdisk-nodeps + m recoveryimage-nodeps + adb reboot bootloader + + # To boot into the new recovery image + # without flashing the recovery partition: + fastboot boot $ANDROID_PRODUCT_OUT/recovery.img diff --git a/default_device.cpp b/default_device.cpp index 97806ac58..ed601f6c6 100644 --- a/default_device.cpp +++ b/default_device.cpp @@ -20,19 +20,24 @@ #include "device.h" #include "screen_ui.h" -static const char* HEADERS[] = { "Volume up/down to move highlight;", - "enter button to select.", - "", - NULL }; +static const char* HEADERS[] = { + "Volume up/down to move highlight.", + "Power button to select.", + "", + NULL +}; -static const char* ITEMS[] = {"reboot system now", - "apply update from ADB", - "wipe data/factory reset", - "wipe cache partition", - "reboot to bootloader", - "power down", - "view recovery logs", - NULL }; +static const char* ITEMS[] = { + "Reboot system now", + "Reboot to bootloader", + "Apply update from ADB", + "Apply update from SD card", + "Wipe data/factory reset", + "Wipe cache partition", + "View recovery logs", + "Power off", + NULL +}; class DefaultDevice : public Device { public: @@ -65,12 +70,13 @@ class DefaultDevice : public Device { BuiltinAction InvokeMenuItem(int menu_position) { switch (menu_position) { case 0: return REBOOT; - case 1: return APPLY_ADB_SIDELOAD; - case 2: return WIPE_DATA; - case 3: return WIPE_CACHE; - case 4: return REBOOT_BOOTLOADER; - case 5: return SHUTDOWN; + case 1: return REBOOT_BOOTLOADER; + case 2: return APPLY_ADB_SIDELOAD; + case 3: return APPLY_EXT; + case 4: return WIPE_DATA; + case 5: return WIPE_CACHE; case 6: return READ_RECOVERY_LASTLOG; + case 7: return SHUTDOWN; default: return NO_ACTION; } } diff --git a/recovery.cpp b/recovery.cpp index 07606137b..641f36f3e 100644 --- a/recovery.cpp +++ b/recovery.cpp @@ -512,7 +512,7 @@ prepend_title(const char* const* headers) { const char** new_headers = (const char**)malloc((count+1) * sizeof(char*)); const char** h = new_headers; - *(h++) = "Android system recovery <" EXPAND(RECOVERY_API_VERSION) "e>"; + *(h++) = "Android system recovery (API " EXPAND(RECOVERY_API_VERSION) ")"; *(h++) = recovery_version; *(h++) = ""; for (p = headers; *p; ++p, ++h) *h = *p; @@ -877,7 +877,11 @@ prompt_and_wait(Device* device, int status) { break; case Device::APPLY_EXT: { - ensure_path_mounted(SDCARD_ROOT); + if (ensure_path_mounted(SDCARD_ROOT) != 0) { + ui->Print("\n-- Couldn't mount %s.\n", SDCARD_ROOT); + break; + } + char* path = browse_directory(SDCARD_ROOT, device); if (path == NULL) { ui->Print("\n-- No package file selected.\n", path); @@ -910,7 +914,7 @@ prompt_and_wait(Device* device, int status) { } else if (!ui->IsTextVisible()) { return Device::NO_ACTION; // reboot if logs aren't visible } else { - ui->Print("\nInstall from sdcard complete.\n"); + ui->Print("\nInstall from SD card complete.\n"); } } break; |