BunsenLabs/bunsen-themes

No scrollbar steppers.

johnraff opened this issue · 12 comments

The default Bunsen theme puts no steppers at the ends of scrollbars, even though lines 66 & 67 of gtkrc have

    GtkScrollbar        ::has-backward-stepper          = 1
    GtkScrollbar        ::has-forward-stepper           = 1 

I found line 422, in style "scrollbar"

    GtkScrollbar::stepper-size  = 0

Experimentally changing that setting from 0 to 13 to match line 55 GtkRange ::stepper-size = 13 fixed the issue for me. All the other themes have the same 0 value for GtkScrollbar::stepper-size but I don't know if editing that line is the correct fix or not.

Some laptop users with unreliable touchpad scrolling will want those steppers.

Intentionally themed that way to match the Crunchbang theme for Statler and Waldorf. When I released "crunchy-dark-grey" over a year and a half ago, there was one post asking about steppers. A second reason to leave them out and how to restore them is here...
http://crunchbang.org/forums/viewtopic.php?pid=357219#p357219

The line numbers are possibly slightly different by now, but a HowTo for this is trivial.

But in that post the fix you give is to edit lines 66/67 to value 1. Those lines are already that way in the current themes, as I posted above.

The fix I found was to edit line 422 but I don't know it that's the clean way or not. Anyway, it does seem a bit odd to enable the steppers but make them zero width, no?

I don't really understand your second reason for not enabling them, that "steppers, as they're called, won't look uniform because Unico and Murrine render them differently" since we're talking about one specific theme here. After putting them in, they were so tiny anyway that it's hard to see rendering differences making much difference to the whole window's appearance.

I have already voiced my opinion of the lack of steppers in Waldorf: http://crunchbang.org/forums/viewtopic.php?pid=296911#p296911 (7th para.) For laptops with unreliable touchpads I think they're essential.

Fuck. Something's changed since then.

The fix I found was to edit line 422 but I don't know it that's the clean way or not. Anyway, it does seem a bit odd to enable the steppers but make them zero width, no?

That would seem to be the right way, but the top stepper is not rendering properly for me, it's not spaced right.

Zero width is lifted directly from Greybird...
https://github.com/shimmerproject/Greybird/blob/master/gtk-2.0/gtkrc

I don't really understand your second reason for not enabling them, that "steppers, as they're called, won't look uniform because Unico and Murrine render them differently"

I mean they'll look different in GTK2 apps and GTK3 apps.

BTW, steppers also are disabled for me in Adwaita (as well as Greybird).

I'm not looking forward to spending 2 hours figuring this out. Fuck fuck fuck.

BTW, steppers also are disabled for me in Adwaita

Yes I noticed that. The only theme that comes with BL to have steppers atm is the default "Raleigh". I haven't looked at GTK3 at all yet. Can you tell me a BL installed app that uses GTK3 that I can look at?

Sorry to dig this up, but hope you appreciate why I (and presumably some others) might want these things.

There was already something about scrollbars in LibreOffice right? Not related of course?

Can you tell me a BL installed app that uses GTK3 that I can look at?

Off the top of my head: file-roller, evince, transmission-gtk

Also synaptic and catfish. You can run sudo apt-get purge -s libgtk-3-common to simulate the removal of gtk3 apps...
http://crunchbang.org/forums/viewtopic.php?pid=437535#p437535

Sorry to dig this up, but hope you appreciate why I (and presumably some others) might want these things.

It's fine. I don't understand though, what's wrong with arrow up/arrow down?

I find that to have steppers a usable size then the scrollbar is too wide, and therefore ugly IMHO.

tl:dr
I found it's easy enough to enable steppers on a per-user basis without hacking the theme files. If we shipped user config files with the code commented out it would be very easy to tell the few oddballs like me how to enable steppers. Another advantage is it works with other themes too.

So @hhhorb if you want to leave the themes exactly how they are and close this issue that's fine with me.
I will go on a bit more below anyway...

Here is what I put in my local files:
~/.gtkrc-2.0.mine

# uncomment the code below to enable steppers in gtk2 apps

style "scrollbar-steppers"
{
    GtkRange::stepper-size      = 13
    GtkScrollbar::stepper-size  = 13
    GtkScrollbar::has-backward-stepper      = 1  
    GtkScrollbar::has-forward-stepper       = 1
}

class "GtkScrollbar" style "scrollbar-steppers"

# end of stepper code

~/.config/gtk3/gtk.css

/* uncomment the code below to enable steppers in gtk3 apps */

.scrollbar, .scrollbar.vertical {
-GtkRange-stepper-size: 13;
-GtkScrollbar-has-backward-stepper: 1;
-GtkScrollbar-has-forward-stepper: 1;
}

/* end of stepper code */

These seem to work with other themes too, but if you graphics gurus can see any problems with the code, please speak.

I originally posted this as an issue, not a forum discussion, because I took lines 66/67 of Bunsen's gtkrc

GtkScrollbar        ::has-backward-stepper          = 1
GtkScrollbar        ::has-forward-stepper           = 1 

to mean that @hhhorb had intended to enable steppers. Maybe those lines should be reset to 0, just to make things clear? That's what Adwaita and Greybird do. (Ignore me if there's a reason not to do that)

the top stepper is not rendering properly for me, it's not spaced right.

I find that to have steppers a usable size then the scrollbar is too wide, and therefore ugly IMHO.

I'm quite happy with the results, and since it all comes down to taste, I guess we can just leave it as it is:
steppers
I have to agree, though, that the arrows are not identical on gtk2 and gtk3. It doesn't bother me, but if there was something I could add to that gtk3 css code to make it match gtk2 I'd happily put it in. ( @hhhorb maybe this is why you left them out? )

what's wrong with arrow up/arrow down?

The arrow keys are not the same. It especially comes out if you're trying to Ctrl+click to select multiple items in a file manager window. The steppers let you pan the window view without changing the selection. In a text editor the arrow keys move the cursor while the steppers move the view. Again, not exactly the same. Googling shows that the current trend to drop steppers has been bothering other people too:
http://forums.fedoraforum.org/showthread.php?t=289062
http://ubuntuforums.org/showthread.php?t=2152526
"It's a pain without them, particularly when using a laptop with no external mouse."

Anyway, since I now have a solution for me and anyone else who needs one, panic over, and sorry to freak you out @hhhorb!

LOL, all good. I'll look this all over after work today before closing the issue.

Thanks for looking into this yourself, John!

~/.config/gtk3/gtk.css

/* uncomment the code below to enable steppers in gtk3 apps */

.scrollbar, .scrollbar.vertical {
-GtkRange-stepper-size: 13;
-GtkScrollbar-has-backward-stepper: 1;
-GtkScrollbar-has-forward-stepper: 1;
}

/* end of stepper code */

All good. Thank you John, sorry for the delay.

btw, I've already put that code (commented out) in the relevant files in bunsen-configs for those who want it.