Author Topic: Improve Scrollbars  (Read 18348 times)

hiccup

  • Hero Member
  • *****
  • Posts: 9152
  - i appreciate it wont be obvious why the scrollbars need to be a bit narrower for the lowlight behavior to take effect but its so some skins are not affected by the change

A positive side effect of this is that this currently gives touchscreen users the option to disable any 'hidden' scrollbars.
For the near future you might need to consider having an overrule button in the main preferences panel: "optimize the interface for touchscreen".

hiccup

  • Hero Member
  • *****
  • Posts: 9152
i've made the following two changes for the next update:
- new setting "ScrollPanelMargin" which reduces the entire width of the skinned scrollbar (this differs from "ScrollBarMargin" which narrows the slider but the scrollbar itself stays the same width of 17px). The value is capped at 10

It's not very important, but I noticed that if a gradient is set for the scrollbar, that gradient is gone when an adjustment to the width is made.

redwing

  • Guest
- mouse over now has the same colouring behavior as gripping the slider.

Thanks for this change! But this still leaves the problem unsolved of "finding" slider in the first place because it only changes the color when the mouse is over slider, not scrollbar.
Can't you make it change the color when the mouse is over the (invisible) vertical line of scollbar like this image?



Bee-liever

  • Member
  • Hero Member
  • *****
  • Posts: 3871
  • MB Version: 3.6.9255 P
I noticed that if a gradient is set for the scrollbar, that gradient is gone when an adjustment to the width is made.

and scrollbar background

Code
<element id="ScrollbarNoArrows">true</element>
<element id="ScrollPanelMargin">1</element>
<element id="ScrollBarMargin">2</element>

but they show up again when narrow scrollbars is chosen.
also, scrollbars are not going narrow when Preferences option changed

on the positive, the scrollbar margin now only shows with narrow scrollbars, allowing a high contrast border as per one of my suggestions.  Thank you :)
MusicBee and my library - Making bee-utiful music together

Steven

  • Administrator
  • Hero Member
  • *****
  • Posts: 34993
also, scrollbars are not going narrow when Preferences option changed
you need to restart. MB prompts you to do so - did you?

Bee-liever

  • Member
  • Hero Member
  • *****
  • Posts: 3871
  • MB Version: 3.6.9255 P
you need to restart. MB prompts you to do so - did you?

Certainly did.  Even tried several skins to check if it was something in the skin I was testing.
But even MusicBee3 wont go to narrow scrollbars

EDIT:
BTW version 3.0.5902.38085
Last Edit: February 28, 2016, 09:21:50 PM by Bee-liever
MusicBee and my library - Making bee-utiful music together

Steven

  • Administrator
  • Hero Member
  • *****
  • Posts: 34993

Bee-liever

  • Member
  • Hero Member
  • *****
  • Posts: 3871
  • MB Version: 3.6.9255 P
Its fixed now

yes, the scroll bars are narrow
but unfortunately, the border attribute no longer shows on mouse over :(
MusicBee and my library - Making bee-utiful music together

Steven

  • Administrator
  • Hero Member
  • *****
  • Posts: 34993

Bee-liever

  • Member
  • Hero Member
  • *****
  • Posts: 3871
  • MB Version: 3.6.9255 P
ver:3.0.5902.38378

scrollbar slider border definitely not showing on mouse-over
images removed - see reply #27 below

Code
<element id="Panel.ScrollBar.Default" bg="246,245,243" bg2="219,196,191" bdr="234,144,134" />
    <element id="Panel.ScrollBar.Lowlight" bg="195,185,172" bg2="178,165,149" />
    <element id="Panel.ScrollBarBackground.Default" bg="228,203,200" bg2="206,191,181"/>
Last Edit: February 28, 2016, 11:09:05 PM by Bee-liever
MusicBee and my library - Making bee-utiful music together

Steven

  • Administrator
  • Hero Member
  • *****
  • Posts: 34993
It's not very important, but I noticed that if a gradient is set for the scrollbar, that gradient is gone when an adjustment to the width is made.
I have changed it so it doesnt do that if the scrollbars are narrowed by the skin config. The gradient still gets removed when the user chooses narrow scrollbars.

Steven

  • Administrator
  • Hero Member
  • *****
  • Posts: 34993
Code
<element id="Panel.ScrollBar.Default" bg="246,245,243" bg2="219,196,191" bdr="234,144,134" />
    <element id="Panel.ScrollBar.Lowlight" bg="195,185,172" bg2="178,165,149" />
    <element id="Panel.ScrollBarBackground.Default" bg="228,203,200" bg2="206,191,181"/>
works fine for me. The only suggestion i have is the obvious - perhaps you have set it to another value further down

Bee-liever

  • Member
  • Hero Member
  • *****
  • Posts: 3871
  • MB Version: 3.6.9255 P
vers:3.0.5902.39628
works fine for me.
My apologies. It is working but I wouldn't say it was fine.
The border colour is being dimmed when applied to the narrow scrollbar slider.
Using 255,0,0 for a default border shows as 238,165,163 when narrow.
This only further exacerbates the need to barstardise the default colours to get a good contrast for narrow scrollbars.
I think I will remove the ScrollBar.Lowlight elements from my skins and not bother with it in the present form. :(

It's not very important, but I noticed that if a gradient is set for the scrollbar, that gradient is gone when an adjustment to the width is made.
I have changed it so it doesnt do that if the scrollbars are narrowed by the skin config. The gradient still gets removed when the user chooses narrow scrollbars.
The gradient is back for the slider, but not for the background.
MusicBee and my library - Making bee-utiful music together

Steven

  • Administrator
  • Hero Member
  • *****
  • Posts: 34993
The gradient is back for the slider, but not for the background.
i will correct that for the next update

Steven

  • Administrator
  • Hero Member
  • *****
  • Posts: 34993
The gradient is back for the slider, but not for the background.
thats fixed for the next update

The border colour is being dimmed when applied to the narrow scrollbar slider.
Using 255,0,0 for a default border shows as 238,165,163 when narrow.
This only further exacerbates the need to barstardise the default colours to get a good contrast for narrow scrollbars.
I think I will remove the ScrollBar.Lowlight elements from my skins and not bother with it in the present form. :(
the reason it was done is because of some skins the gradient becomes extreme due to the narrowness of the panel and slider. I want to leave that behavior as a default but i am willing to add a boolean override to MB just uses the exact colours as specified in your skin to the user-set narrow scrollbar (i appreciate having to do that is a bit tail wagging the dog but i want to get the best overall behavior for a wide range of skins)