forked from len0rd/rockbox
Rework lcd_enabled and lcd_set/call_enable hook
a) lcd_enabled() is now lcd_active(), and is available for HAVE_LCD_SLEEP only targets (e.g. ipod video) too. It was depandent on HAVE_LCD_ENALE only before b) rename the hook accordingly, and implement the hook for other other targets too (e.g. the clip [the only mono target with lcd_enable/lcd_sleep yet, so the code is still in the lcd driver], ipod, fuze, c200) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20331 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
aad712d39f
commit
b7739fbf1c
23 changed files with 101 additions and 84 deletions
|
@ -604,7 +604,7 @@ static int get_start_time(uint32_t duration)
|
|||
lcd_(update)();
|
||||
|
||||
#if defined(HAVE_LCD_ENABLE) && defined(HAVE_LCD_COLOR)
|
||||
rb->lcd_set_enable_hook(get_start_time_lcd_enable_hook);
|
||||
rb->lcd_activation_set_hook(get_start_time_lcd_enable_hook);
|
||||
#endif
|
||||
|
||||
draw_slider(0, 100, &rc_bound);
|
||||
|
@ -794,11 +794,10 @@ static int get_start_time(uint32_t duration)
|
|||
rb->yield();
|
||||
}
|
||||
|
||||
#ifdef HAVE_LCD_COLOR
|
||||
#ifdef HAVE_LCD_ENABLE
|
||||
rb->lcd_set_enable_hook(NULL);
|
||||
#if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP)
|
||||
rb->lcd_activation_set_hook(NULL);
|
||||
#endif
|
||||
#else
|
||||
#ifndef HAVE_LCD_COLOR
|
||||
stream_gray_show(false);
|
||||
grey_clear_display();
|
||||
grey_update();
|
||||
|
|
|
@ -621,7 +621,7 @@ static void draw_putsxy_oriented(int x, int y, const char *str)
|
|||
}
|
||||
#endif /* LCD_PORTRAIT */
|
||||
|
||||
#if defined(HAVE_LCD_ENABLE) && defined(HAVE_LCD_COLOR)
|
||||
#if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP)
|
||||
/* So we can refresh the overlay */
|
||||
static void wvs_lcd_enable_hook(void)
|
||||
{
|
||||
|
@ -635,12 +635,12 @@ static void wvs_backlight_on_video_mode(bool video_on)
|
|||
/* Turn off backlight timeout */
|
||||
/* backlight control in lib/helper.c */
|
||||
backlight_force_on();
|
||||
#if defined(HAVE_LCD_ENABLE) && defined(HAVE_LCD_COLOR)
|
||||
rb->lcd_set_enable_hook(NULL);
|
||||
#if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP)
|
||||
rb->lcd_activation_set_hook(NULL);
|
||||
#endif
|
||||
} else {
|
||||
#if defined(HAVE_LCD_ENABLE) && defined(HAVE_LCD_COLOR)
|
||||
rb->lcd_set_enable_hook(wvs_lcd_enable_hook);
|
||||
#if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP)
|
||||
rb->lcd_activation_set_hook(wvs_lcd_enable_hook);
|
||||
#endif
|
||||
/* Revert to user's backlight settings */
|
||||
backlight_use_settings();
|
||||
|
@ -1485,7 +1485,7 @@ static void button_loop(void)
|
|||
continue;
|
||||
} /* BUTTON_NONE: */
|
||||
|
||||
#ifdef HAVE_LCD_ENABLE
|
||||
#if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP)
|
||||
case LCD_ENABLE_EVENT_1:
|
||||
{
|
||||
/* Draw the current frame if prepared already */
|
||||
|
@ -1628,10 +1628,10 @@ static void button_loop(void)
|
|||
|
||||
wvs_stop();
|
||||
|
||||
#if defined(HAVE_LCD_ENABLE) && defined(HAVE_LCD_COLOR)
|
||||
#if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP)
|
||||
/* Be sure hook is removed before exiting since the stop will put it
|
||||
* back because of the backlight restore. */
|
||||
rb->lcd_set_enable_hook(NULL);
|
||||
rb->lcd_activation_set_hook(NULL);
|
||||
#endif
|
||||
|
||||
rb->lcd_setfont(FONT_UI);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue