Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e944944f authored by Elliott Hughes's avatar Elliott Hughes Committed by Gerrit Code Review
Browse files

Merge "Add "Apply update from sdcard" to default recovery image."

parents 8c637903 c51ac89f
Loading
Loading
Loading
Loading

README.md

0 → 100644
+14 −0
Original line number Diff line number Diff line
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
+23 −17
Original line number Diff line number Diff line
@@ -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.",
static const char* HEADERS[] = {
    "Volume up/down to move highlight.",
    "Power button to select.",
    "",
                                 NULL };
    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;
        }
    }
+7 −3
Original line number Diff line number Diff line
@@ -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;