Loading recovery.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -75,6 +75,7 @@ static const struct option OPTIONS[] = { { "stages", required_argument, NULL, 'g' }, { "shutdown_after", no_argument, NULL, 'p' }, { "reason", required_argument, NULL, 'r' }, { "security", no_argument, NULL, 'e'}, { NULL, 0, NULL, 0 }, }; Loading Loading @@ -1344,6 +1345,7 @@ int main(int argc, char **argv) { bool just_exit = false; bool shutdown_after = false; int retry_count = 0; bool security_update = false; int arg; while ((arg = getopt_long(argc, argv, "", OPTIONS, NULL)) != -1) { Loading @@ -1368,6 +1370,7 @@ int main(int argc, char **argv) { } case 'p': shutdown_after = true; break; case 'r': reason = optarg; break; case 'e': security_update = true; break; case '?': LOGE("Invalid command argument\n"); continue; Loading @@ -1387,6 +1390,9 @@ int main(int argc, char **argv) { ui->SetLocale(locale); ui->Init(); // Set background string to "installing security update" for security update, // otherwise set it to "installing system update". ui->SetSystemUpdateText(security_update); int st_cur, st_max; if (stage != NULL && sscanf(stage, "%d/%d", &st_cur, &st_max) == 2) { Loading screen_ui.cpp +14 −1 Original line number Diff line number Diff line Loading @@ -425,6 +425,16 @@ static char** Alloc2d(size_t rows, size_t cols) { return result; } // Choose the right background string to display during update. void ScreenRecoveryUI::SetSystemUpdateText(bool security_update) { if (security_update) { LoadLocalizedBitmap("installing_security_text", &installing_text); } else { LoadLocalizedBitmap("installing_text", &installing_text); } Redraw(); } void ScreenRecoveryUI::Init() { gr_init(); Loading @@ -450,7 +460,10 @@ void ScreenRecoveryUI::Init() { LoadBitmap("stage_empty", &stageMarkerEmpty); LoadBitmap("stage_fill", &stageMarkerFill); LoadLocalizedBitmap("installing_text", &installing_text); // Background text for "installing_update" could be "installing update" // or "installing security update". It will be set after UI init according // to commands in BCB. installing_text = nullptr; LoadLocalizedBitmap("erasing_text", &erasing_text); LoadLocalizedBitmap("no_command_text", &no_command_text); LoadLocalizedBitmap("error_text", &error_text); Loading screen_ui.h +1 −0 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ class ScreenRecoveryUI : public RecoveryUI { // overall recovery state ("background image") void SetBackground(Icon icon); void SetSystemUpdateText(bool security_update); // progress indicator void SetProgressType(ProgressType type); Loading tests/component/verifier_test.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ class MockUI : public RecoveryUI { void SetStage(int, int) { } void SetLocale(const char*) { } void SetBackground(Icon icon) { } void SetSystemUpdateText(bool security_update) { } void SetProgressType(ProgressType determinate) { } void ShowProgress(float portion, float seconds) { } Loading ui.h +1 −0 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ class RecoveryUI { // Set the overall recovery state ("background image"). enum Icon { NONE, INSTALLING_UPDATE, ERASING, NO_COMMAND, ERROR }; virtual void SetBackground(Icon icon) = 0; virtual void SetSystemUpdateText(bool security_update) = 0; // --- progress indicator --- enum ProgressType { EMPTY, INDETERMINATE, DETERMINATE }; Loading Loading
recovery.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -75,6 +75,7 @@ static const struct option OPTIONS[] = { { "stages", required_argument, NULL, 'g' }, { "shutdown_after", no_argument, NULL, 'p' }, { "reason", required_argument, NULL, 'r' }, { "security", no_argument, NULL, 'e'}, { NULL, 0, NULL, 0 }, }; Loading Loading @@ -1344,6 +1345,7 @@ int main(int argc, char **argv) { bool just_exit = false; bool shutdown_after = false; int retry_count = 0; bool security_update = false; int arg; while ((arg = getopt_long(argc, argv, "", OPTIONS, NULL)) != -1) { Loading @@ -1368,6 +1370,7 @@ int main(int argc, char **argv) { } case 'p': shutdown_after = true; break; case 'r': reason = optarg; break; case 'e': security_update = true; break; case '?': LOGE("Invalid command argument\n"); continue; Loading @@ -1387,6 +1390,9 @@ int main(int argc, char **argv) { ui->SetLocale(locale); ui->Init(); // Set background string to "installing security update" for security update, // otherwise set it to "installing system update". ui->SetSystemUpdateText(security_update); int st_cur, st_max; if (stage != NULL && sscanf(stage, "%d/%d", &st_cur, &st_max) == 2) { Loading
screen_ui.cpp +14 −1 Original line number Diff line number Diff line Loading @@ -425,6 +425,16 @@ static char** Alloc2d(size_t rows, size_t cols) { return result; } // Choose the right background string to display during update. void ScreenRecoveryUI::SetSystemUpdateText(bool security_update) { if (security_update) { LoadLocalizedBitmap("installing_security_text", &installing_text); } else { LoadLocalizedBitmap("installing_text", &installing_text); } Redraw(); } void ScreenRecoveryUI::Init() { gr_init(); Loading @@ -450,7 +460,10 @@ void ScreenRecoveryUI::Init() { LoadBitmap("stage_empty", &stageMarkerEmpty); LoadBitmap("stage_fill", &stageMarkerFill); LoadLocalizedBitmap("installing_text", &installing_text); // Background text for "installing_update" could be "installing update" // or "installing security update". It will be set after UI init according // to commands in BCB. installing_text = nullptr; LoadLocalizedBitmap("erasing_text", &erasing_text); LoadLocalizedBitmap("no_command_text", &no_command_text); LoadLocalizedBitmap("error_text", &error_text); Loading
screen_ui.h +1 −0 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ class ScreenRecoveryUI : public RecoveryUI { // overall recovery state ("background image") void SetBackground(Icon icon); void SetSystemUpdateText(bool security_update); // progress indicator void SetProgressType(ProgressType type); Loading
tests/component/verifier_test.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ class MockUI : public RecoveryUI { void SetStage(int, int) { } void SetLocale(const char*) { } void SetBackground(Icon icon) { } void SetSystemUpdateText(bool security_update) { } void SetProgressType(ProgressType determinate) { } void ShowProgress(float portion, float seconds) { } Loading
ui.h +1 −0 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ class RecoveryUI { // Set the overall recovery state ("background image"). enum Icon { NONE, INSTALLING_UPDATE, ERASING, NO_COMMAND, ERROR }; virtual void SetBackground(Icon icon) = 0; virtual void SetSystemUpdateText(bool security_update) = 0; // --- progress indicator --- enum ProgressType { EMPTY, INDETERMINATE, DETERMINATE }; Loading