summaryrefslogtreecommitdiff
path: root/apps/gui
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 /apps/gui
parent0b6f6831379302a61cb26ac52d4f9a50a9dbdc75 (diff)
downloadrockbox-bbeb3ec75154502a956506f0455229a355c8a84a.tar.gz
rockbox-bbeb3ec75154502a956506f0455229a355c8a84a.zip
Fix yellow
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22956 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui')
-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 52d4847730..efca22832d 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)
110void list_draw(struct screen *display, struct gui_synclist *list) 110void list_draw(struct screen *display, struct gui_synclist *list)
111{ 111{
112 struct viewport list_icons; 112 struct viewport list_icons;
113 int start, end, line_height, style, i; 113 int start, end, line_height, style, i, scrollbar_in_left;
114 const int screen = display->screen_type; 114 const int screen = display->screen_type;
115 const int icon_width = get_icon_width(screen) + ICON_PADDING; 115 const int icon_width = get_icon_width(screen) + ICON_PADDING;
116 const bool show_cursor = !global_settings.cursor_style && 116 const bool show_cursor = !global_settings.cursor_style &&
@@ -134,7 +134,10 @@ void list_draw(struct screen *display, struct gui_synclist *list)
134 134
135 start = list->start_item[screen]; 135 start = list->start_item[screen];
136 end = start + viewport_get_nb_lines(&list_text[screen]); 136 end = start + viewport_get_nb_lines(&list_text[screen]);
137 137
138 scrollbar_in_left =
139 (!is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW) ||
140 (is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW_OPPOSITE);
138 /* draw the scrollbar if its needed */ 141 /* draw the scrollbar if its needed */
139 if (global_settings.scrollbar && 142 if (global_settings.scrollbar &&
140 viewport_get_nb_lines(&list_text[screen]) < list->nb_items) 143 viewport_get_nb_lines(&list_text[screen]) < list->nb_items)
@@ -146,15 +149,10 @@ void list_draw(struct screen *display, struct gui_synclist *list)
146 viewport_get_nb_lines(&list_text[screen]); 149 viewport_get_nb_lines(&list_text[screen]);
147 vp.x = parent->x; 150 vp.x = parent->x;
148 list_text[screen].width -= SCROLLBAR_WIDTH; 151 list_text[screen].width -= SCROLLBAR_WIDTH;
149 if (!is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW || 152 if (scrollbar_in_left)
150 is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW_OPPOSITE)
151 {
152 list_text[screen].x += SCROLLBAR_WIDTH; 153 list_text[screen].x += SCROLLBAR_WIDTH;
153 }
154 else 154 else
155 {
156 vp.x += list_text[screen].width; 155 vp.x += list_text[screen].width;
157 }
158 display->set_viewport(&vp); 156 display->set_viewport(&vp);
159 gui_scrollbar_draw(display, 0, 0, SCROLLBAR_WIDTH-1, 157 gui_scrollbar_draw(display, 0, 0, SCROLLBAR_WIDTH-1,
160 vp.height, list->nb_items, 158 vp.height, list->nb_items,
@@ -164,9 +162,8 @@ void list_draw(struct screen *display, struct gui_synclist *list)
164 } 162 }
165 else if (show_title) 163 else if (show_title)
166 { 164 {
167 /* shift everything right a bit... */ 165 /* shift everything a bit in relation to the title... */
168 if (!is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW || 166 if (scrollbar_in_left)
169 is_rtl && global_settings.scrollbar == SCROLLBAR_SHOW_OPPOSITE)
170 { 167 {
171 list_text[screen].width -= SCROLLBAR_WIDTH; 168 list_text[screen].width -= SCROLLBAR_WIDTH;
172 list_text[screen].x += SCROLLBAR_WIDTH; 169 list_text[screen].x += SCROLLBAR_WIDTH;