clear recovery framebuffers on allocation; display icon right after ui_init
Make ui_init() clear the framebuffer memory it maps in so the user isn't treated to a visible flash of random bits on recovery startup. Call ui_set_background() (to show the installing icon) right after ui_init() to display something while device_recovery_start() is working (which can take a second or two on some devices). Bug: 3145331 Change-Id: I11e7859fab5847370ea4f4932c3fb1558af26c5d
This commit is contained in:
parent
2c3539e4d8
commit
51266d1397
@ -88,6 +88,7 @@ static int get_framebuffer(GGLSurface *fb)
|
||||
fb->stride = vi.xres;
|
||||
fb->data = bits;
|
||||
fb->format = GGL_PIXEL_FORMAT_RGB_565;
|
||||
memset(fb->data, 0, vi.yres * vi.xres * 2);
|
||||
|
||||
fb++;
|
||||
|
||||
@ -97,6 +98,7 @@ static int get_framebuffer(GGLSurface *fb)
|
||||
fb->stride = vi.xres;
|
||||
fb->data = (void*) (((unsigned) bits) + vi.yres * vi.xres * 2);
|
||||
fb->format = GGL_PIXEL_FORMAT_RGB_565;
|
||||
memset(fb->data, 0, vi.yres * vi.xres * 2);
|
||||
|
||||
return fd;
|
||||
}
|
||||
@ -277,7 +279,6 @@ int gr_init(void)
|
||||
set_active_framebuffer(0);
|
||||
gl->colorBuffer(gl, &gr_mem_surface);
|
||||
|
||||
|
||||
gl->activeTexture(gl, 0);
|
||||
gl->enable(gl, GGL_BLEND);
|
||||
gl->blendFunc(gl, GGL_SRC_ALPHA, GGL_ONE_MINUS_SRC_ALPHA);
|
||||
|
@ -701,6 +701,7 @@ main(int argc, char **argv) {
|
||||
printf("Starting recovery on %s", ctime(&start));
|
||||
|
||||
ui_init();
|
||||
ui_set_background(BACKGROUND_ICON_INSTALLING);
|
||||
load_volume_table();
|
||||
get_args(&argc, &argv);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user