summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2006-02-18 00:13:44 +0000
committerJens Arnold <amiconn@rockbox.org>2006-02-18 00:13:44 +0000
commit35e05ca504c1423bca2f42db284bf26bdeeb1a77 (patch)
tree3f39a2d04d7f35fa41868124f1cb93e8b49b8f38
parentc0deb5371f01fe5706eedac2def6eb8ac2607da0 (diff)
downloadrockbox-35e05ca504c1423bca2f42db284bf26bdeeb1a77.tar.gz
rockbox-35e05ca504c1423bca2f42db284bf26bdeeb1a77.zip
Plugin loader: Handle the remote LCD the same way as the main LCD (clear, set parameters).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8724 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/plugin.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/apps/plugin.c b/apps/plugin.c
index 6060b4ad31..6f3585b130 100644
--- a/apps/plugin.c
+++ b/apps/plugin.c
@@ -413,6 +413,9 @@ int plugin_load(const char* plugin, void* parameter)
#ifdef HAVE_LCD_BITMAP
int xm, ym;
#endif
+#ifdef HAVE_REMOTE_LCD
+ int rxm, rym;
+#endif
#ifdef HAVE_LCD_COLOR
fb_data* old_backdrop;
#endif
@@ -495,12 +498,21 @@ int plugin_load(const char* plugin, void* parameter)
lcd_clear_display();
#endif
+#ifdef HAVE_REMOTE_LCD
+ rxm = lcd_remote_getxmargin();
+ rym = lcd_remote_getymargin();
+ lcd_remote_setmargins(0, 0);
+ lcd_remote_clear_display();
+ lcd_remote_update();
+#endif
+
invalidate_icache();
rc = hdr->entry_point((struct plugin_api*) &rockbox_api, parameter);
/* explicitly casting the pointer here to avoid touching every plugin. */
button_clear_queue();
+
#ifdef HAVE_LCD_BITMAP
#if LCD_DEPTH > 1
lcd_set_drawinfo(DRMODE_SOLID, LCD_DEFAULT_FG, LCD_DEFAULT_BG);
@@ -515,7 +527,14 @@ int plugin_load(const char* plugin, void* parameter)
lcd_clear_display();
lcd_update();
#endif /* HAVE_LCD_BITMAP */
-
+
+#ifdef HAVE_REMOTE_LCD
+ lcd_remote_set_drawmode(DRMODE_SOLID);
+ lcd_remote_setmargins(rxm, rym);
+ lcd_remote_clear_display();
+ lcd_remote_update();
+#endif
+
if (pfn_tsr_exit == NULL)
plugin_loaded = false;