Index: rockbox/apps/plugin.c
===================================================================
RCS file: /cvsroot/rockbox/apps/plugin.c,v
retrieving revision 1.165
diff -u -u -r1.165 plugin.c
--- rockbox/apps/plugin.c	28 Mar 2006 16:18:21 -0000	1.165
+++ rockbox/apps/plugin.c	1 Apr 2006 16:49:47 -0000
@@ -495,7 +495,9 @@
     }
     plugin_size = hdr->end_addr - pluginbuf;
 #endif
-
+    /* Set backlight to be on all the time */
+    if (global_settings.backlight_timeout_plugin)
+        backlight_set_timeout(1);
     plugin_loaded = true;
 
 #ifdef HAVE_LCD_BITMAP
@@ -570,7 +572,8 @@
             gui_syncsplash(HZ*2, true, str(LANG_PLUGIN_ERROR));
             break;
     }
-
+    /* Set backlight timeout back to user setting */
+    backlight_set_timeout(global_settings.backlight_timeout);
     return PLUGIN_OK;
 }
 
Index: rockbox/apps/settings.c
===================================================================
RCS file: /cvsroot/rockbox/apps/settings.c,v
retrieving revision 1.377
diff -u -u -r1.377 settings.c
--- rockbox/apps/settings.c	1 Apr 2006 13:36:33 -0000	1.377
+++ rockbox/apps/settings.c	1 Apr 2006 16:49:47 -0000
@@ -242,6 +242,7 @@
     {5, S_O(backlight_timeout_plugged), 11, "backlight timeout plugged",
         backlight_times_conf },
 #endif
+    {1, S_O(backlight_timeout_plugin), false, "backlight timeout plugin", off_on },
 #endif /* CONFIG_BACKLIGHT */
 #ifdef HAVE_LCD_BITMAP
     {1, S_O(invert), false, "invert", off_on },
Index: rockbox/apps/settings.h
===================================================================
RCS file: /cvsroot/rockbox/apps/settings.h,v
retrieving revision 1.214
diff -u -u -r1.214 settings.h
--- rockbox/apps/settings.h	29 Mar 2006 16:21:42 -0000	1.214
+++ rockbox/apps/settings.h	1 Apr 2006 16:49:47 -0000
@@ -271,6 +271,7 @@
                                1=always,
                                then according to timeout_values[] */
     int backlight_timeout_plugged;
+    bool backlight_timeout_plugin; /* backlight on while in plugin */
 #ifdef HAVE_BACKLIGHT_PWM_FADING
     int backlight_fade_in;  /* backlight fade in timing: 0..3 */
     int backlight_fade_out; /* backlight fade in timing: 0..7 */
Index: rockbox/apps/settings_menu.c
===================================================================
RCS file: /cvsroot/rockbox/apps/settings_menu.c,v
retrieving revision 1.248
diff -u -u -r1.248 settings_menu.c
--- rockbox/apps/settings_menu.c	30 Mar 2006 05:56:19 -0000	1.248
+++ rockbox/apps/settings_menu.c	1 Apr 2006 16:49:47 -0000
@@ -191,6 +191,13 @@
                       backlight_set_timeout );
 }
 
+static bool backlight_timer_plugin(void)
+{
+    bool rc = set_bool( str(LANG_BACKLIGHT_ON_WHEN_PLUGIN),
+                        &global_settings.backlight_timeout_plugin);
+    return rc;
+}
+
 #if defined(HAVE_BACKLIGHT_PWM_FADING) && !defined(SIMULATOR)
 static bool backlight_fade_in(void)
 {
@@ -1681,6 +1688,7 @@
 #ifdef HAVE_CHARGING
         { ID2P(LANG_BACKLIGHT_ON_WHEN_CHARGING), backlight_timer_plugged },
 #endif
+        { ID2P(LANG_BACKLIGHT_ON_WHEN_PLUGIN), backlight_timer_plugin },
         { ID2P(LANG_CAPTION_BACKLIGHT), caption_backlight },
 #if defined(HAVE_BACKLIGHT_PWM_FADING) && !defined(SIMULATOR)
         { ID2P(LANG_BACKLIGHT_FADE_IN), backlight_fade_in },
Index: rockbox/apps/lang/english.lang
===================================================================
RCS file: /cvsroot/rockbox/apps/lang/english.lang,v
retrieving revision 1.237
diff -u -u -r1.237 english.lang
--- rockbox/apps/lang/english.lang	1 Apr 2006 13:36:30 -0000	1.237
+++ rockbox/apps/lang/english.lang	1 Apr 2006 16:49:47 -0000
@@ -1375,6 +1375,12 @@
 eng: "Backlight When Plugged"
 voice: "Backlight When Plugged"
 new:
+ 
+id: LANG_BACKLIGHT_ON_WHEN_PLUGIN
+desc: in display_settings_menu, backlight timeout when running plugin
+eng: "Backlight For Plugin"
+voice: "Backlight For Plugin"
+new:
 
 id: LANG_CAPTION_BACKLIGHT
 desc: in settings_menu

