firmware: fixing menu artifacts during printing

BUG=chrome-os-partner:61275
BRANCH=None
TEST=reboot and switch menus and make sure everything
     is printing out properly.

Change-Id: I1269d3dc762a66dde0203673b7b400aba92afa75
Signed-off-by: Shelley Chen <shchen@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/424356
Reviewed-by: Randall Spangler <rspangler@chromium.org>
diff --git a/firmware/lib/vboot_ui_menu.c b/firmware/lib/vboot_ui_menu.c
index be4b837..1256e2e 100644
--- a/firmware/lib/vboot_ui_menu.c
+++ b/firmware/lib/vboot_ui_menu.c
@@ -235,7 +235,7 @@
 };
 
 static char *dev_menu[] = {
-	"Boot Network Image\n",
+	"Boot Network Image (not working yet)\n",
 	"Boot Legacy BIOS\n",
 	"Boot USB Image\n",
 	"Boot Developer Image\n",
@@ -643,7 +643,6 @@
 			vb2_get_current_menu_size(current_menu,
 						  NULL, &menu_size);
 			current_menu_idx = (current_menu_idx+1) % menu_size;
-			VbDisplayScreen(ctx, cparams, VB_SCREEN_DEVELOPER_WARNING, 0);
 			vb2_print_current_menu();
 			break;
 		case VB_KEY_RIGHT:
@@ -902,6 +901,14 @@
 				ret = vb2_update_menu();
 				if (current_menu != VB_MENU_RECOVERY ||
 				     current_menu_idx != VB_RECOVERY_DBG_INFO) {
+					// unfortunately we need this screen
+					// blanking to clear previous menus
+					// printed.
+					VbDisplayScreen(ctx, cparams, VB_SCREEN_BLANK, 0);
+					VbDisplayScreen(ctx, cparams, VBERROR_NO_DISK_FOUND == retval ?
+							VB_SCREEN_RECOVERY_INSERT :
+							VB_SCREEN_RECOVERY_NO_GOOD,
+							0);
 					vb2_print_current_menu();
 				}