diff options
author | Thomas Martitz <kugel@rockbox.org> | 2009-08-09 17:39:39 +0000 |
---|---|---|
committer | Thomas Martitz <kugel@rockbox.org> | 2009-08-09 17:39:39 +0000 |
commit | 9f3fc27be4a2483815dacfa3f532ea8d35df650f (patch) | |
tree | 10b28f80936509dc3c7cf2a17bdc2df11c00a88f /apps | |
parent | dc4e90341ccf97d1451f46fa1bd4acde5e950298 (diff) | |
download | rockbox-9f3fc27be4a2483815dacfa3f532ea8d35df650f.tar.gz rockbox-9f3fc27be4a2483815dacfa3f532ea8d35df650f.zip |
Fix player and greyscale reds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22224 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r-- | apps/gui/viewport.c | 38 | ||||
-rw-r--r-- | apps/gui/viewport.h | 2 |
2 files changed, 27 insertions, 13 deletions
diff --git a/apps/gui/viewport.c b/apps/gui/viewport.c index 52704d9f69..fbbd4eab5a 100644 --- a/apps/gui/viewport.c +++ b/apps/gui/viewport.c | |||
@@ -37,12 +37,24 @@ | |||
37 | 37 | ||
38 | 38 | ||
39 | 39 | ||
40 | #ifdef HAVE_LCD_COLOR | ||
40 | #define LINE_SEL_FROM_SETTINGS(vp) \ | 41 | #define LINE_SEL_FROM_SETTINGS(vp) \ |
41 | do { \ | 42 | do { \ |
42 | vp->lss_pattern = global_settings.lss_color; \ | 43 | vp->lss_pattern = global_settings.lss_color; \ |
43 | vp->lse_pattern = global_settings.lse_color; \ | 44 | vp->lse_pattern = global_settings.lse_color; \ |
44 | vp->lst_pattern = global_settings.lst_color; \ | 45 | vp->lst_pattern = global_settings.lst_color; \ |
45 | } while (0) | 46 | } while (0) |
47 | #else | ||
48 | #define LINE_SEL_FROM_SETTINGS(vp) | ||
49 | #endif | ||
50 | |||
51 | #ifdef HAVE_LCD_COLOR | ||
52 | #define FG_FALLBACK global_settings.fg_color | ||
53 | #define BG_FALLBACK global_settings.bg_color | ||
54 | #else | ||
55 | #define FG_FALLBACK LCD_DEFAULT_FG | ||
56 | #define BG_FALLBACK LCD_DEFAULT_FG | ||
57 | #endif | ||
46 | 58 | ||
47 | static int statusbar_enabled = 0; | 59 | static int statusbar_enabled = 0; |
48 | 60 | ||
@@ -89,20 +101,17 @@ void viewport_set_defaults(struct viewport *vp, enum screen_type screen) | |||
89 | #endif | 101 | #endif |
90 | vp->height = screens[screen].lcdheight - (showing_bars(screen)?STATUSBAR_HEIGHT:0); | 102 | vp->height = screens[screen].lcdheight - (showing_bars(screen)?STATUSBAR_HEIGHT:0); |
91 | 103 | ||
104 | #if LCD_DEPTH > 1 | ||
92 | #ifdef HAVE_REMOTE_LCD | 105 | #ifdef HAVE_REMOTE_LCD |
93 | /* We only need this test if there is a remote LCD */ | 106 | /* We only need this test if there is a remote LCD */ |
94 | if (screen == SCREEN_MAIN) | 107 | if (screen == SCREEN_MAIN) |
95 | #endif | 108 | #endif |
96 | { | 109 | { |
97 | #ifdef HAVE_LCD_COLOR | 110 | vp->fg_pattern = FG_FALLBACK; |
98 | vp->fg_pattern = global_settings.fg_color; | 111 | vp->bg_pattern = BG_FALLBACK; |
99 | vp->bg_pattern = global_settings.bg_color; | ||
100 | LINE_SEL_FROM_SETTINGS(vp); | 112 | LINE_SEL_FROM_SETTINGS(vp); |
101 | #elif LCD_DEPTH > 1 | ||
102 | vp->fg_pattern = LCD_DEFAULT_FG; | ||
103 | vp->bg_pattern = LCD_DEFAULT_BG; | ||
104 | #endif | ||
105 | } | 113 | } |
114 | #endif | ||
106 | 115 | ||
107 | #if defined(HAVE_REMOTE_LCD) && LCD_REMOTE_DEPTH > 1 | 116 | #if defined(HAVE_REMOTE_LCD) && LCD_REMOTE_DEPTH > 1 |
108 | if (screen == SCREEN_REMOTE) | 117 | if (screen == SCREEN_REMOTE) |
@@ -159,6 +168,7 @@ void viewportmanager_statusbar_changed(void* data) | |||
159 | viewportmanager_set_statusbar(statusbar_enabled); | 168 | viewportmanager_set_statusbar(statusbar_enabled); |
160 | } | 169 | } |
161 | 170 | ||
171 | #ifdef HAVE_LCD_BITMAP | ||
162 | const char* viewport_parse_viewport(struct viewport *vp, | 172 | const char* viewport_parse_viewport(struct viewport *vp, |
163 | enum screen_type screen, | 173 | enum screen_type screen, |
164 | const char *bufptr, | 174 | const char *bufptr, |
@@ -219,15 +229,15 @@ const char* viewport_parse_viewport(struct viewport *vp, | |||
219 | if (!LIST_VALUE_PARSED(set, PL_HEIGHT)) | 229 | if (!LIST_VALUE_PARSED(set, PL_HEIGHT)) |
220 | vp->height = screens[screen].lcdheight - vp->y; | 230 | vp->height = screens[screen].lcdheight - vp->y; |
221 | 231 | ||
222 | #if (LCD_DEPTH > 1) | 232 | #if LCD_DEPTH > 1 || LCD_REMOTE_DEPTH > 1 |
223 | if (!LIST_VALUE_PARSED(set, PL_FG)) | 233 | if (!LIST_VALUE_PARSED(set, PL_FG)) |
224 | vp->fg_pattern = global_settings.fg_color; | 234 | vp->fg_pattern = FG_FALLBACK; |
225 | if (!LIST_VALUE_PARSED(set, PL_BG)) | 235 | if (!LIST_VALUE_PARSED(set, PL_BG)) |
226 | vp->bg_pattern = global_settings.bg_color; | 236 | vp->bg_pattern = BG_FALLBACK; |
227 | #endif | 237 | #endif /* LCD_DEPTH > 1 || LCD_REMOTE_DEPTH > 1 */ |
228 | #ifdef HAVE_LCD_COLOR | 238 | |
229 | LINE_SEL_FROM_SETTINGS(vp); | 239 | LINE_SEL_FROM_SETTINGS(vp); |
230 | #endif | 240 | |
231 | /* Validate the viewport dimensions - we know that the numbers are | 241 | /* Validate the viewport dimensions - we know that the numbers are |
232 | non-negative integers, ignore bars and assume the viewport takes them | 242 | non-negative integers, ignore bars and assume the viewport takes them |
233 | * into account */ | 243 | * into account */ |
@@ -249,3 +259,5 @@ const char* viewport_parse_viewport(struct viewport *vp, | |||
249 | 259 | ||
250 | return ptr; | 260 | return ptr; |
251 | } | 261 | } |
262 | |||
263 | #endif /* HAVE_LCD_BITMAP */ | ||
diff --git a/apps/gui/viewport.h b/apps/gui/viewport.h index 65a9815bcd..f703c97342 100644 --- a/apps/gui/viewport.h +++ b/apps/gui/viewport.h | |||
@@ -41,10 +41,12 @@ void viewport_set_defaults(struct viewport *vp, enum screen_type screen); | |||
41 | /* parse a viewport list, which looks like | 41 | /* parse a viewport list, which looks like |
42 | * X|Y|width|height|font|foregorund color|background color | 42 | * X|Y|width|height|font|foregorund color|background color |
43 | * | is a separator */ | 43 | * | is a separator */ |
44 | #ifdef HAVE_LCD_BITMAP | ||
44 | const char* viewport_parse_viewport(struct viewport *vp, | 45 | const char* viewport_parse_viewport(struct viewport *vp, |
45 | enum screen_type screen, | 46 | enum screen_type screen, |
46 | const char *bufptr, | 47 | const char *bufptr, |
47 | const char separator); | 48 | const char separator); |
49 | #endif | ||
48 | /* Used to specify which screens the statusbar (SB) should be displayed on. | 50 | /* Used to specify which screens the statusbar (SB) should be displayed on. |
49 | * | 51 | * |
50 | * The parameter is a bit OR'ed combination of the following (screen is | 52 | * The parameter is a bit OR'ed combination of the following (screen is |