summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomer Shalev <shalev.tomer@gmail.com>2009-10-05 13:20:08 +0000
committerTomer Shalev <shalev.tomer@gmail.com>2009-10-05 13:20:08 +0000
commitbbeb3ec75154502a956506f0455229a355c8a84a (patch)
tree273d22619b9464e52eefa7dbaf956e72ae99d3b2
parent0b6f6831379302a61cb26ac52d4f9a50a9dbdc75 (diff)
downloadrockbox-bbeb3ec75154502a956506f0455229a355c8a84a.zip
rockbox-bbeb3ec75154502a956506f0455229a355c8a84a.tar.gz
rockbox-bbeb3ec75154502a956506f0455229a355c8a84a.tar.bz2
rockbox-bbeb3ec75154502a956506f0455229a355c8a84a.tar.xz
Fix yellow
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22956 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/gui/bitmap/list.c19
1 files changed, 8 insertions, 11 deletions
diff --git a/apps/gui/bitmap/list.c b/apps/gui/bitmap/list.c
index 52d4847..efca228 100644
--- a/apps/gui/bitmap/list.c
+++ b/apps/gui/bitmap/list.c
@@ -110,7 +110,7 @@ static bool draw_title(struct screen *display, struct gui_synclist *list)
void list_draw(struct screen *display, struct gui_synclist *list)
{
struct viewport list_icons;
- int start, end, line_height, style, i;
+ int start, end, line_height, style, i, scrollbar_in_left;
const int screen = display->screen_type;
const int icon_width = get_icon_width(screen) + ICON_PADDING;
const bool show_cursor = !global_settings.cursor_style &&
@@ -134,7 +134,10 @@ void list_draw(struct screen *display, struct gui_synclist *list)
start = list->start_item[screen];
end = start + viewport_get_nb_lines(&list_text[screen]);
-
+
+ scrollbar_in_left =
+ (!is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW) ||
+ (is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW_OPPOSITE);
/* draw the scrollbar if its needed */
if (global_settings.scrollbar &&
viewport_get_nb_lines(&list_text[screen]) < list->nb_items)
@@ -146,15 +149,10 @@ void list_draw(struct screen *display, struct gui_synclist *list)
viewport_get_nb_lines(&list_text[screen]);
vp.x = parent->x;
list_text[screen].width -= SCROLLBAR_WIDTH;
- if (!is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW ||
- is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW_OPPOSITE)
- {
+ if (scrollbar_in_left)
list_text[screen].x += SCROLLBAR_WIDTH;
- }
else
- {
vp.x += list_text[screen].width;
- }
display->set_viewport(&vp);
gui_scrollbar_draw(display, 0, 0, SCROLLBAR_WIDTH-1,
vp.height, list->nb_items,
@@ -164,9 +162,8 @@ void list_draw(struct screen *display, struct gui_synclist *list)
}
else if (show_title)
{
- /* shift everything right a bit... */
- if (!is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW ||
- is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW_OPPOSITE)
+ /* shift everything a bit in relation to the title... */
+ if (scrollbar_in_left)
{
list_text[screen].width -= SCROLLBAR_WIDTH;
list_text[screen].x += SCROLLBAR_WIDTH;