recovery: simple graphical ui

Change-Id: If1635438af5b8456283c3a138ccdccea6054c478
diff --git a/minui/graphics.cpp b/minui/graphics.cpp
index cc82094..4203599 100644
--- a/minui/graphics.cpp
+++ b/minui/graphics.cpp
@@ -30,6 +30,7 @@
 #include "minui/minui.h"
 
 static GRFont* gr_font = nullptr;
+static GRFont* gr_font_menu = nullptr;
 static MinuiBackend* gr_backend = nullptr;
 
 static int overscan_offset_x = 0;
@@ -55,6 +56,10 @@
   return gr_font;
 }
 
+const GRFont* gr_menu_font() {
+  return gr_font_menu;
+}
+
 PixelFormat gr_pixel_format() {
   return pixel_format;
 }
@@ -423,6 +428,11 @@
     printf("Failed to init font: %d, continuing graphic backend initialization without font file\n",
            ret);
   }
+  ret = gr_init_font("font_menu", &gr_font_menu);
+  if (ret != 0) {
+    printf("Failed to init menu font: %d. Falling back to system font\n", ret);
+    gr_font_menu = gr_font;
+  }
 
   std::unique_ptr<MinuiBackend> minui_backend;
   for (GraphicsBackend backend : backends) {