summaryrefslogtreecommitdiffstats
path: root/recovery.cpp
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2016-04-15 01:49:04 +0200
committerElliott Hughes <enh@google.com>2016-04-15 07:44:23 +0200
commit498cda6ef6c610efb055221d6c689185d49447bb (patch)
tree93254321220442262525eb80b50f60055e3cea17 /recovery.cpp
parentUse BoringSSL instead of mincrypt to speed up package verification. (diff)
downloadandroid_bootable_recovery-498cda6ef6c610efb055221d6c689185d49447bb.tar
android_bootable_recovery-498cda6ef6c610efb055221d6c689185d49447bb.tar.gz
android_bootable_recovery-498cda6ef6c610efb055221d6c689185d49447bb.tar.bz2
android_bootable_recovery-498cda6ef6c610efb055221d6c689185d49447bb.tar.lz
android_bootable_recovery-498cda6ef6c610efb055221d6c689185d49447bb.tar.xz
android_bootable_recovery-498cda6ef6c610efb055221d6c689185d49447bb.tar.zst
android_bootable_recovery-498cda6ef6c610efb055221d6c689185d49447bb.zip
Diffstat (limited to 'recovery.cpp')
-rw-r--r--recovery.cpp37
1 files changed, 36 insertions, 1 deletions
diff --git a/recovery.cpp b/recovery.cpp
index 508cd62ee..dbdc1fbd6 100644
--- a/recovery.cpp
+++ b/recovery.cpp
@@ -103,7 +103,7 @@ static const int BATTERY_OK_PERCENTAGE = 20;
static const int BATTERY_WITH_CHARGER_OK_PERCENTAGE = 15;
RecoveryUI* ui = NULL;
-char* locale = NULL;
+static const char* locale = "en_US";
char* stage = NULL;
char* reason = NULL;
bool modified_flash = false;
@@ -910,6 +910,37 @@ static void choose_recovery_file(Device* device) {
}
}
+static void run_graphics_test(Device* device) {
+ // Switch to graphics screen.
+ ui->ShowText(false);
+
+ ui->SetProgressType(RecoveryUI::INDETERMINATE);
+ ui->SetBackground(RecoveryUI::INSTALLING_UPDATE);
+ sleep(1);
+
+ ui->SetBackground(RecoveryUI::ERROR);
+ sleep(1);
+
+ ui->SetBackground(RecoveryUI::NO_COMMAND);
+ sleep(1);
+
+ ui->SetBackground(RecoveryUI::ERASING);
+ sleep(1);
+
+ ui->SetBackground(RecoveryUI::INSTALLING_UPDATE);
+
+ ui->SetProgressType(RecoveryUI::DETERMINATE);
+ ui->ShowProgress(1.0, 10.0);
+ float fraction = 0.0;
+ for (size_t i = 0; i < 100; ++i) {
+ fraction += .01;
+ ui->SetProgress(fraction);
+ usleep(100000);
+ }
+
+ ui->ShowText(true);
+}
+
// How long (in seconds) we wait for the fuse-provided package file to
// appear, before timing out.
#define SDCARD_INSTALL_TIMEOUT 10
@@ -1068,6 +1099,10 @@ prompt_and_wait(Device* device, int status) {
choose_recovery_file(device);
break;
+ case Device::RUN_GRAPHICS_TEST:
+ run_graphics_test(device);
+ break;
+
case Device::MOUNT_SYSTEM:
char system_root_image[PROPERTY_VALUE_MAX];
property_get("ro.build.system_root_image", system_root_image, "");