plugins: properties: don't clear UI viewport for dirs
rockbox-gerrit-noreply--- via rockbox-cvs <[email protected]> Sat, 9 May 2026 01:09:23 -0400
| Newsgroups | gmane.comp.systems.archos.rockbox.cvs |
|---|---|
| Message-ID | <[email protected]> |
commit bc528c4079dcbf152529e45c8aa61768d63451a8 Author: Christian Soffke <[email protected]> Date: Sat May 9 07:03:58 2026 +0200 plugins: properties: don't clear UI viewport for dirs Accidentally made the vp flash in previous commit. Dir scanning doesn't display a progress bar and already handles its own drawing Change-Id: Id0e67d62081dfe4b22e91c775cd80af2e55a4b69 diff --git a/apps/plugins/properties.c b/apps/plugins/properties.c index fc251e4900..f61f8bcabb 100644 --- a/apps/plugins/properties.c +++ b/apps/plugins/properties.c @@ -331,13 +331,6 @@ enum plugin_status plugin_start(const void* parameter) const char *file = parameter; static struct viewport ui_vp; - /* clear UI vp */ - struct screen* display = rb->screens[SCREEN_MAIN]; - rb->viewport_set_defaults(&ui_vp, SCREEN_MAIN); - struct viewport *last_vp = display->set_viewport(&ui_vp); - display->clear_viewport(); - display->set_viewport(last_vp); - #ifdef HAVE_TOUCHSCREEN rb->touchscreen_set_mode(rb->global_settings->touch_mode); #endif @@ -349,6 +342,17 @@ enum plugin_status plugin_start(const void* parameter) return PLUGIN_OK; } + /* erase background behind progress bar to prevent glitches + for themes adjusting viewport for context menu activity */ + if (props_type != PROPS_DIR) + { + struct screen* display = rb->screens[SCREEN_MAIN]; + rb->viewport_set_defaults(&ui_vp, SCREEN_MAIN); + struct viewport *last_vp = display->set_viewport(&ui_vp); + display->clear_viewport(); + display->set_viewport(last_vp); + } + if (props_type == PROPS_MUL_ID3) ret = assemble_track_info(NULL, NULL); else if (props_type != PROPS_ID3) -- rockbox-cvs mailing list [email protected] https://lists.haxx.se/mailman/listinfo/rockbox-cvs