diff --git a/apps/gui/bitmap/list.c b/apps/gui/bitmap/list.c index 97eefce..7b1644f 100644 --- a/apps/gui/bitmap/list.c +++ b/apps/gui/bitmap/list.c @@ -207,7 +207,7 @@ void list_draw(struct screen *display, struct gui_synclist *list) gui_scrollbar_draw(display, (scrollbar_in_left? 0: 1), 0, SCROLLBAR_WIDTH-1, vp.height, list->nb_items, list_start_item, list_start_item + nb_lines, - VERTICAL); + VERTICAL | (global_settings.scrollbar_border ? 0 : BORDER_NOFILL)); } /* shift everything a bit in relation to the title */ else if (!VP_IS_RTL(list_text_vp) && scrollbar_in_left) diff --git a/apps/lang/english.lang b/apps/lang/english.lang index e8fc5fc..e9e834a 100644 --- a/apps/lang/english.lang +++ b/apps/lang/english.lang @@ -11641,6 +11641,23 @@ + id: LANG_SCROLLBAR_BORDER + desc: in Settings -> General -> Display -> Status-/Scrollbar + user: core + + *: none + lcd_bitmap: "Scroll Bar Border" + + + *: none + lcd_bitmap: "Scroll Bar Border" + + + *: none + lcd_bitmap: "Scroll bar border" + + + id: LANG_SCROLLBAR_POSITION desc: in Settings -> General -> Display -> Status-/Scrollbar user: core diff --git a/apps/menus/theme_menu.c b/apps/menus/theme_menu.c index f64ded1..dae3f91 100644 --- a/apps/menus/theme_menu.c +++ b/apps/menus/theme_menu.c @@ -207,6 +207,7 @@ static int buttonbar_callback(int action, const struct menu_item_ex *this_item) #endif MENUITEM_SETTING(scrollbar_item, &global_settings.scrollbar, NULL); MENUITEM_SETTING(scrollbar_width, &global_settings.scrollbar_width, NULL); +MENUITEM_SETTING(scrollbar_border, &global_settings.scrollbar_border, NULL); MENUITEM_SETTING(statusbar, &global_settings.statusbar, statusbar_callback); #ifdef HAVE_REMOTE_LCD @@ -219,7 +220,7 @@ MENUITEM_SETTING(buttonbar, &global_settings.buttonbar, buttonbar_callback); MENUITEM_SETTING(volume_type, &global_settings.volume_type, NULL); MENUITEM_SETTING(battery_display, &global_settings.battery_display, NULL); MAKE_MENU(bars_menu, ID2P(LANG_BARS_MENU), 0, Icon_NOICON, - &scrollbar_item, &scrollbar_width, &statusbar, + &scrollbar_item, &scrollbar_width, &scrollbar_border, &statusbar, #ifdef HAVE_REMOTE_LCD &remote_statusbar, #endif diff --git a/apps/settings.h b/apps/settings.h index ec2d100..480b375 100644 --- a/apps/settings.h +++ b/apps/settings.h @@ -123,6 +123,9 @@ enum { SHOW_PATH_OFF = 0, SHOW_PATH_CURRENT, SHOW_PATH_FULL }; /* scrollbar visibility/position */ enum { SCROLLBAR_OFF = 0, SCROLLBAR_LEFT, SCROLLBAR_RIGHT }; +/* scrollbar border */ +enum { SCROLLBAR_BORDERED = 0, SCROLLBAR_SIMPLE }; + /* autoresume settings */ enum { AUTORESUME_NEXTTRACK_NEVER = 0, AUTORESUME_NEXTTRACK_ALWAYS, AUTORESUME_NEXTTRACK_CUSTOM}; @@ -537,6 +540,7 @@ struct user_settings #ifdef HAVE_LCD_BITMAP int scrollbar; /* SCROLLBAR_* enum values */ int scrollbar_width; + bool scrollbar_border; #ifdef HAVE_TOUCHSCREEN int list_line_padding; diff --git a/apps/settings_list.c b/apps/settings_list.c index 62f2326..34fd08e 100644 --- a/apps/settings_list.c +++ b/apps/settings_list.c @@ -917,6 +917,8 @@ const struct settings_list settings[] = { INT_SETTING(F_THEMESETTING, scrollbar_width, LANG_SCROLLBAR_WIDTH, 6, "scrollbar width",UNIT_INT, 3, MAX(LCD_WIDTH/10,25), 1, NULL, NULL, NULL), + OFFON_SETTING(F_THEMESETTING|F_TEMPVAR, scrollbar_border, LANG_SCROLLBAR_BORDER, + true ,"scrollbar_border", NULL), #ifdef HAVE_TOUCHSCREEN TABLE_SETTING(F_ALLOW_ARBITRARY_VALS, list_line_padding, LANG_LIST_LINE_PADDING, -1, "list padding", "auto,off", UNIT_PIXEL, list_pad_formatter,