remove pixelflinger from recovery
Recovery now draws directly to the framebuffer by rolling its own graphics code, rather than depending on libpixelflinger. The recovery UI is modified slightly to eliminate operations that are slow with the software implementation: when the text display / menu is turned on, it now appears on a black background instead of a dimmed version of the recovery icon. There's probably substantial room for optimization of the graphics operations. Bug: 12131110 Change-Id: Iab6520e0a7aaec39e2ce39377c10aef82ae0c595
This commit is contained in:
+7
-7
@@ -87,7 +87,7 @@ void ScreenRecoveryUI::draw_background_locked(Icon icon)
|
||||
{
|
||||
pagesIdentical = false;
|
||||
gr_color(0, 0, 0, 255);
|
||||
gr_fill(0, 0, gr_fb_width(), gr_fb_height());
|
||||
gr_clear();
|
||||
|
||||
if (icon) {
|
||||
gr_surface surface = backgroundIcon[icon];
|
||||
@@ -203,12 +203,12 @@ void ScreenRecoveryUI::SetColor(UIElement e) {
|
||||
// Should only be called with updateMutex locked.
|
||||
void ScreenRecoveryUI::draw_screen_locked()
|
||||
{
|
||||
draw_background_locked(currentIcon);
|
||||
draw_progress_locked();
|
||||
|
||||
if (show_text) {
|
||||
SetColor(TEXT_FILL);
|
||||
gr_fill(0, 0, gr_fb_width(), gr_fb_height());
|
||||
if (!show_text) {
|
||||
draw_background_locked(currentIcon);
|
||||
draw_progress_locked();
|
||||
} else {
|
||||
gr_color(0, 0, 0, 255);
|
||||
gr_clear();
|
||||
|
||||
int y = 0;
|
||||
int i = 0;
|
||||
|
||||
Reference in New Issue
Block a user