Open Bug 1260067 Opened 8 years ago Updated 2 years ago

Scrollbars broken on FreeBSD?

Categories

(Core :: Widget: Gtk, defect, P4)

defect

Tracking

()

Tracking Status
firefox48 --- affected

People

(Reporter: Dolske, Unassigned)

Details

(Whiteboard: tpi:+)

From Twitter (https://twitter.com/jef_poskanzer/status/712707405721677824):

"The latest version of @firefox breaks scrollbars ... They made right-click do what left-click used to, left-click do what middle-click used to, and middle-click do nothing. ... I left-click on a @firefox scrollbar; instead of scrolling down, it scrolls to where I clicked; and I realize it has lost my place again."

https://twitter.com/jef_poskanzer/status/714219869026189312

"v45 also came with numerous appearance changes; the scrollbar-related ones were: thinner, and round-ended thumb."


Jef says this was fine in Firefox 44. Other apps work fine, and Firefox is still broken in a new profile. I tried testing in a VM, but the FreeBSD VM image I downloaded doesn't seem to like the VirtualBox networking on my OS X host. :/

Jan: any idea what's happening here? I'm not aware of any deliberate change, but perhaps this is FreeBSD-specific? That the scrollbar appearance changed makes me wonder if this is a GTK3 change -- did FreeBSD enable that in FF45? (bug 627699 / --enable-default-toolkit=cairo-gtk3). Otherwise, does FreeBSD have nightly builds that we might be able to bisect into to narrow down what happened?
Flags: needinfo?(jbeich)
...and maybe Mike knows if this is a GTK3 thing?
Flags: needinfo?(mh+mozilla)
This does sound like gtk2 vs gtk3, although that's not our default in 45. It could also be a Gtk theme change. I know in some places, at least the Adwaita theme for gtk2 switched to have the same behavior as gtk3.

Either way, it's entirely on Gtk's end, we're just following what the system defaults to for the toolkit/theme in use.
Flags: needinfo?(mh+mozilla)
Component: Untriaged → Widget: Gtk
Product: Firefox → Core
For Gtk+3, the solution is to add this to ~/.config/gtk-3.0/settings.ini:

[Settings]
gtk-primary-button-warps-slider=false

This doesn't seem to be changeable from gnome-tweak-tool.

Or set ui.scrollToClick to 0 in about:config.

FWIW, bug 803633 is where we changed the behavior to follow the toolkit/theme behavior. I had the behavior change surprise a while ago, and that was entirely with Gtk+2. https://bugzilla.mozilla.org/show_bug.cgi?id=803633#c40
www/firefox port indeed switched to GTK3 by default shortly after 45.0 update as bug 1245476 looked harmless. Packages are built with default options, so my plan is GTK3=on, RUST=on won't ride into www/firefox-esr with 45.1. For a chronology see
https://www.freshports.org/www/firefox

(In reply to Justin Dolske [:Dolske] from comment #0)
> does FreeBSD have nightly builds that we might be able to bisect into to narrow down what happened?

Regular builds *without* downstream patches, configs, etc. have been broken for months
http://buildbot.rhaalovely.net/builders/mozilla-central-freebsd-amd64
Flags: needinfo?(jbeich)
(In reply to Mike Hommey [:glandium] from comment #3)
> For Gtk+3, the solution is to add this to ~/.config/gtk-3.0/settings.ini:
> [Settings]
> gtk-primary-button-warps-slider=false

Tried this one and it seems to have put the mouse buttons back the way I'm used to. Not just the primary button. Thanks.

> Or set ui.scrollToClick to 0 in about:config.

I don't see anything resembling this setting in my about:config.
(In reply to Mike Hommey [:glandium] from comment #3)
> For Gtk+3, the solution is to add this to ~/.config/gtk-3.0/settings.ini:
> 
> [Settings]
> gtk-primary-button-warps-slider=false

In my case, I had to use gtk-primary-button-warps-slider=0 (false was not recognized as a valid value)

> Or set ui.scrollToClick to 0 in about:config.

Cannot find this setting in my about:config
>> Or set ui.scrollToClick to 0 in about:config.

> Cannot find this setting in my about:config

You can add it.  Right-click in the window full of settings and choose New -> Integer.  Then type the option name (ui.scrollToClick), then the value (0).

Be sure to select "integer" as the type, not "boolean", or else it won't work.

This option setting works both in Firefox and Thunderbird.
Priority: -- → P4
Whiteboard: tpi:+
To set a system preference, write it to: 

/usr/local/etc/gtk-3.0/settings.ini

GTK: allow scroll bar behaviours of applications such as Firefox and Thunderbird to be consistent with behaviours of other applications · Issue #227 · trueos/trueos-core
<https://github.com/trueos/trueos-core/issues/227>
The ui.scrollToClick setting doesn't seem to affect at all. Or maybe I'm unable to change its type after I've added it.

I've added the setting in gtk 3, but I use KDE.

I think it should default to the old behaviour when you're not using Gnome 3.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.