recovery: Fix the flickering when turning on text mode.

When there's no command specified when booting into debuggable builds
(such as using `adb reboot recovery`), we turn on the text mode (i.e.
recovery menu) directly. This CL fixes the issue to avoid showing the
background image in a flash while turning on the text mode.

Bug: 63985334
Test: `fastboot boot $OUT/recovery.img` and it shows the recovery menu
      directly without the no command image in a flash.
Change-Id: Id86bbe346ab76c8defc95e2b423e695a86774b09
(cherry picked from commit 7022f33ec8)
This commit is contained in:
Tao Bao
2017-07-25 09:52:36 -07:00
parent 5cee24f4f1
commit fda6ee7d61
+8 -9
View File
@@ -1591,15 +1591,14 @@ int main(int argc, char **argv) {
ui->Print("Rebooting automatically.\n"); ui->Print("Rebooting automatically.\n");
} }
} else if (!just_exit) { } else if (!just_exit) {
status = INSTALL_NONE; // No command specified // If this is an eng or userdebug build, automatically turn on the text display if no command
ui->SetBackground(RecoveryUI::NO_COMMAND); // is specified. Note that this should be called before setting the background to avoid
// flickering the background image.
// http://b/17489952 if (is_ro_debuggable()) {
// If this is an eng or userdebug build, automatically turn on the ui->ShowText(true);
// text display if no command is specified. }
if (is_ro_debuggable()) { status = INSTALL_NONE; // No command specified
ui->ShowText(true); ui->SetBackground(RecoveryUI::NO_COMMAND);
}
} }
if (status == INSTALL_ERROR || status == INSTALL_CORRUPT) { if (status == INSTALL_ERROR || status == INSTALL_CORRUPT) {