diff options
Diffstat (limited to 'apps/gui/scrollbar.c')
-rw-r--r-- | apps/gui/scrollbar.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/apps/gui/scrollbar.c b/apps/gui/scrollbar.c index 8f431a4ff8..17d280b1ca 100644 --- a/apps/gui/scrollbar.c +++ b/apps/gui/scrollbar.c | |||
@@ -151,6 +151,9 @@ void gui_scrollbar_draw(struct screen * screen, int x, int y, | |||
151 | 151 | ||
152 | screen->set_drawmode(DRMODE_SOLID); | 152 | screen->set_drawmode(DRMODE_SOLID); |
153 | 153 | ||
154 | if (flags & INNER_NOFILL) | ||
155 | return; | ||
156 | |||
154 | #ifdef HAVE_LCD_COLOR | 157 | #ifdef HAVE_LCD_COLOR |
155 | if (infill == INNER_BGFILL) | 158 | if (infill == INNER_BGFILL) |
156 | { | 159 | { |
@@ -190,7 +193,12 @@ void gui_bitmap_scrollbar_draw(struct screen * screen, struct bitmap *bm, int x, | |||
190 | 193 | ||
191 | /* clear pixels in progress bar */ | 194 | /* clear pixels in progress bar */ |
192 | screen->fillrect(x, y, width, height); | 195 | screen->fillrect(x, y, width, height); |
193 | 196 | ||
197 | screen->set_drawmode(DRMODE_SOLID); | ||
198 | |||
199 | if (flags & INNER_NOFILL) | ||
200 | return; | ||
201 | |||
194 | if (flags & INVERTFILL) | 202 | if (flags & INVERTFILL) |
195 | { | 203 | { |
196 | min_shown = items - max_shown; | 204 | min_shown = items - max_shown; |
@@ -204,8 +212,6 @@ void gui_bitmap_scrollbar_draw(struct screen * screen, struct bitmap *bm, int x, | |||
204 | 212 | ||
205 | scrollbar_helper(min_shown, max_shown, items, inner_len, &size, &start); | 213 | scrollbar_helper(min_shown, max_shown, items, inner_len, &size, &start); |
206 | 214 | ||
207 | screen->set_drawmode(DRMODE_SOLID); | ||
208 | |||
209 | if (flags & HORIZONTAL) { | 215 | if (flags & HORIZONTAL) { |
210 | x += start; | 216 | x += start; |
211 | width = size; | 217 | width = size; |