Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 578326 - x11-libs/gtk+-3.20.0 breaks scrollbars in <www-client/firefox-48.0
Summary: x11-libs/gtk+-3.20.0 breaks scrollbars in <www-client/firefox-48.0
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Mozilla Gentoo Team
URL:
Whiteboard:
Keywords:
: 587348 587544 (view as bug list)
Depends on:
Blocks: gnome-3.20
  Show dependency tree
 
Reported: 2016-03-26 19:36 UTC by Franz Trischberger
Modified: 2016-10-14 12:13 UTC (History)
24 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Screenshot of this bug report in firefox-45.0.1 exhibiting the bug. (Screenshot from 2016-04-06 09-08-43.png,61.81 KB, image/png)
2016-04-06 16:13 UTC, Jordan Yelloz
Details
bigger fonts (2016-07-27-234718_2560x1440_scrot.png,573.45 KB, image/png)
2016-07-27 21:52 UTC, Marc Arens
Details
firefox-bin-49.0 using gtk+ 3.18.9 (ok) vs. 3.20.9 (black outlines) (ff49gtk+318vs320.gif,29.17 KB, image/gif)
2016-10-14 11:21 UTC, Andreas Klauer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Franz Trischberger 2016-03-26 19:36:08 UTC
The scrollbar doesn't show the scroll handle/indicator, only a gray square is drawn.
GTK_OVERLAY_SCROLLING=0 does not help. Other gtk3-apps like abiword and dconf-editor still work.

x11-libs/gtk+-3.20.0(3)[1](09:37:03 26.03.2016)(X cups introspection wayland -aqua -broadway -cloudprint -colord -debug -examples -test -vim-syntax -xinerama ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64" ABI_X86="64 -32 -x32")

www-client/firefox-45.0.1^d(09:05:09 20.03.2016)(custom-cflags dbus ffmpeg gstreamer gtk3 hwaccel jemalloc3 jit pulseaudio system-icu system-jpeg system-libevent system-libvpx system-sqlite -bindist -custom-optimization -debug -gmp-autoupdate -gstreamer-0 -hardened -neon -pgo -selinux -startup-notification -system-cairo -test -wifi LINGUAS="de -af -ar -as -ast -be -bg -bn_BD -bn_IN -br -bs -ca -cs -cy -da -el -en_GB -en_ZA -eo -es_AR -es_CL -es_ES -es_MX -et -eu -fa -fi -fr -fy_NL -ga_IE -gd -gl -gu_IN -he -hi_IN -hr -hu -hy_AM -id -is -it -ja -kk -km -kn -ko -lt -lv -mai -mk -ml -mr -nb_NO -nl -nn_NO -or -pa_IN -pl -pt_BR -pt_PT -rm -ro -ru -si -sk -sl -son -sq -sr -sv_SE -ta -te -th -tr -uk -vi -xh -zh_CN -zh_TW")

www-client/epiphany-3.18.4(13:11:59 24.02.2016)(-debug -nss -test)
Comment 1 Jordan Yelloz 2016-04-06 16:13:07 UTC
Created attachment 429786 [details]
Screenshot of this bug report in firefox-45.0.1 exhibiting the bug.

I have experienced this too. I'm using the gnome overlay. I even tried upgrading to gtk+-3.20.2 and it has not solved the problem for me. I have an arch linux system with gnome 3.20 and it does not have this problem. Interestingly, I don't see this problem in thunderbird 38.7.1 on my gentoo system so it may be some kind of build/patch problem with firefox.
Comment 2 Ian Stakenvicius (RETIRED) gentoo-dev 2016-04-06 16:57:36 UTC
Not seeing a gtk3 issue in firefox on other distros makes sense, as firefox-45 isn't built using the cairo-gtk3 toolkit anywhere but on gentoo with USE=gtk3 right now -- rather, they all follow the upstream advice which until firefox-46 is to use cairo-gtk2.  Similarly, thunderbird also uses gtk2 and will continue to do so until thunderbird-52.x (or whatever version after 45.x) is released.

Firefox upstream as of right now doesn't have full gtk+-3.20 support, according to https://bugzilla.mozilla.org/show_bug.cgi?id=1234158 ; once the relevant patches land upstream I'll make sure firefox-46 contains them.

Gnome team, is there a way to use gtk+-3.20 or newer in some sort of compatibility mode?  Or is the only way to handle this on ~arch until firefox contains appropriate support, to use an upper bound on the gtk3?
Comment 3 Jordan Yelloz 2016-04-06 17:09:14 UTC
(In reply to Ian Stakenvicius from comment #2)
> Not seeing a gtk3 issue in firefox on other distros makes sense, as
> firefox-45 isn't built using the cairo-gtk3 toolkit anywhere but on gentoo
> with USE=gtk3 right now -- rather, they all follow the upstream advice which
> until firefox-46 is to use cairo-gtk2.  Similarly, thunderbird also uses
> gtk2 and will continue to do so until thunderbird-52.x (or whatever version
> after 45.x) is released.

I have checked about:buildconfig on my Arch system, it has the cairo-gtk3 toolkit selected. Here are all the configure options on an arch linux build of firefox:

--enable-application=browser --prefix=/usr --libdir=/usr/lib --enable-release --enable-gold --enable-pie --enable-official-branding --enable-default-toolkit=cairo-gtk3 --with-system-nspr --with-system-nss --with-system-jpeg --with-system-zlib --with-system-bz2 --with-system-png --with-system-libevent --with-system-libvpx --with-system-icu --enable-system-hunspell --enable-system-sqlite --enable-system-ffi --enable-system-pixman --enable-startup-notification --enable-pulseaudio --disable-gstreamer --disable-crashreporter --disable-updater --disable-installer --disable-debug-symbols --with-google-api-keyfile=/build/firefox/src/firefox-45.0.1/google-api-key --with-google-oauth-api-keyfile=/build/firefox/src/firefox-45.0.1/google-oauth-api-key --with-mozilla-api-keyfile=/build/firefox/src/firefox-45.0.1/mozilla-api-key
Comment 4 Jordan Yelloz 2016-04-06 20:52:24 UTC
> I have checked about:buildconfig on my Arch system, it has the cairo-gtk3
> toolkit selected.

It turns out Arch Linux has also added the 3.20 patch from Firefox bug #1234158 so that's why things work over there:
https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/firefox&id=871dcc666f49d31c1060f00472fc85f2a0e722a3
Comment 5 tt_1 2016-04-14 16:23:58 UTC
fedora uses the same patch with success. from where have you taken the gtk+-3.20 ebuild?
Comment 6 Ole Reifschneider (RETIRED) gentoo-dev 2016-04-15 08:28:53 UTC
(In reply to tt_1 from comment #5)
> fedora uses the same patch with success. from where have you taken the
> gtk+-3.20 ebuild?

It's in the gnome overlay.
Comment 7 Markus Rathgeb 2016-05-14 18:06:56 UTC
I am started using the Gnome overlay (don't know if this is related, if it is, you are informed).

I realized today that my Firefox 46.0 does not show scrollbars, checkboxes etc.
Google pointed me to this site: https://www.reddit.com/r/firefox/comments/4d6wt1/firefox_on_linux_doesnt_show_scroll_bar_handles/

I tried to visit the linked mozilla bugzilla, but it seems to be in maintain mode or something similar at the moment. So I have not been able to link the related bug report there.

I placed the linked patch (https://git.archlinux.org/svntogit/packages.git/plain/trunk/firefox-gtk3-20.patch?h=packages/firefox) of the Arch Linux Firefox package in /etc/portage/patches/www-client/firefox-46.0/firefox-gtk3-20.patch and recompiled Firefox.

This seems to improve the situation.
Scrollbars and checkboxes are now shown better.

What do you think about adding the patch to the official portage tree?
Or do you think it could break other stuff?
Comment 8 Pacho Ramos gentoo-dev 2016-06-25 08:11:49 UTC
Is this still happening with gtk+-3.20.6 and a newer firefox? (per upstream mozilla report, it should be solved in their side finally)
Comment 9 Franz Trischberger 2016-06-25 08:37:47 UTC
(In reply to Pacho Ramos from comment #8)
> Is this still happening with gtk+-3.20.6 and a newer firefox? (per upstream
> mozilla report, it should be solved in their side finally)

With most recent gtk+ (3.20.2, gnome overlay) and firefox (47.0) available in Gentoo I still see those issues. I would like to test gtk+-3.20.6 but I can't see it yet ;)
Comment 10 Franz Trischberger 2016-06-25 13:53:01 UTC
Thx for updating gtk to 3.20.6! Unfortunately it doesn't fix the issue for me. So we probably need to wait for a firefox-update.
Comment 11 Ian Stakenvicius (RETIRED) gentoo-dev 2016-06-25 14:23:29 UTC
(In reply to Franz Fellner from comment #10)
> Thx for updating gtk to 3.20.6! Unfortunately it doesn't fix the issue for
> me. So we probably need to wait for a firefox-update.

Correct -- the patch landed on firefox-48, which will be released in a couple of weeks.
Comment 12 Pacho Ramos gentoo-dev 2016-06-25 16:17:36 UTC
@mozilla, feel free to handle it in firefox side 

I am not sure if simply waiting for firefox-48 will be enough... or patching an older version for stabilization purposes :/ Is stable release firefox affected by this? In that case I would opt for either applying the patches used in other distributions or default to gtk2 again :S
Comment 13 jospezial 2016-06-25 21:17:57 UTC
Not yet fixed upstream in www-client/firefox-bin-48.0_beta3 .

Where is the upstream patch? Or is it in a Gentoo overlay?

I also noticed after the gnome and gtk* updates today changes in the fonts in firefox.
Comment 14 jospezial 2016-06-25 21:32:53 UTC
That is strange.
The bug should be fixed in beta:

https://hg.mozilla.org/releases/mozilla-beta/rev/cb42beedc07e
"add support for GTK 3.20 scrollbars r=karlt a=lizzard"

Upstream bug (marked as fixed):
https://bugzilla.mozilla.org/show_bug.cgi?id=1234158


btw, I see no button in the background of "Save Changes" on this site here.
Comment 15 jospezial 2016-06-26 12:19:12 UTC
I also noticed, there are no background highlight bars when I go through the menu of firefox.
Comment 16 jospezial 2016-06-27 20:16:31 UTC
I can't use ALT+TAB while holding a website element with the mouse to drag and drop it to another program.


www-client/firefox-bin-47.0 and www-client/firefox-bin-48.0_beta3
Comment 17 Pacho Ramos gentoo-dev 2016-06-30 09:43:16 UTC
This is the (big) gtk+-3.20 patch applied in Fedora, maybe it will help people (but it is for 47.x versions)
http://pkgs.fedoraproject.org/cgit/rpms/firefox.git/plain/firefox-gtk3-20.patch
Comment 18 daniel 2016-06-30 11:02:21 UTC
(In reply to Pacho Ramos from comment #17)
> This is the (big) gtk+-3.20 patch applied in Fedora, maybe it will help
> people (but it is for 47.x versions)
> http://pkgs.fedoraproject.org/cgit/rpms/firefox.git/plain/firefox-gtk3-20.
> patch

With this patch, I got my scrollbar back. Thanks
Comment 19 jospezial 2016-06-30 11:35:22 UTC
Not yet fixed upstream in www-client/firefox-bin-48.0_beta4
Comment 20 Pacho Ramos gentoo-dev 2016-06-30 14:57:15 UTC
*** Bug 587348 has been marked as a duplicate of this bug. ***
Comment 21 Pacho Ramos gentoo-dev 2016-06-30 14:57:36 UTC
*** Bug 587544 has been marked as a duplicate of this bug. ***
Comment 22 jospezial 2016-07-04 11:29:37 UTC
Not yet fixed upstream in www-client/firefox-bin-48.0_beta5
Comment 23 daniel 2016-07-04 12:06:45 UTC
Except the broken scrollbars, I noticed that my firefox decorations (titlebar, dialog boxes etc.) don't reflect my GTK+ theme (Adwaita, global dark) anymore since  gtk+-3.20.

Is this related?
Comment 24 jospezial 2016-07-06 22:25:26 UTC
(In reply to daniel from comment #23)
> Except the broken scrollbars, I noticed that my firefox decorations
> (titlebar, dialog boxes etc.) don't reflect my GTK+ theme (Adwaita, global
> dark) anymore since  gtk+-3.20.
> 
> Is this related?

For example I see this on the my command line:

(firefox:1978): Gtk-WARNING **: Theme parsing error: gtk.css:2774:35: The :insensitive pseudo-class is deprecated. Use :disabled instead.

(firefox:1978): Gtk-WARNING **: Theme parsing error: gtk.css:2785:46: The :insensitive pseudo-class is deprecated. Use :disabled instead.

(firefox:1978): Gtk-WARNING **: Theme parsing error: gtk.css:2936:15: The 'icon-shadow' property has been renamed to '-gtk-icon-shadow'
Comment 25 jospezial 2016-07-07 18:29:57 UTC
Not yet fixed upstream in www-client/firefox-bin-48.0_beta6

And not fixed in nightly.

Same messages in the session log or in terminal when started from there.
Comment 26 jospezial 2016-07-07 19:01:05 UTC
OK, it works.
But only if you don't choose the breeze themes for gtk3. Adwaita for example works as expected.

=================================================================
                        Package Settings
=================================================================

kde-plasma/breeze-9999::kde was built with the following:
USE="-debug -qt4" ABI_X86="64"


kde-frameworks/breeze-icons-9999::kde was built with the following:
USE="-test" ABI_X86="64"


kde-plasma/breeze-gtk-9999::kde was built with the following:
USE="-debug" ABI_X86="64"

Last emerged on 2nd July.
Comment 27 jospezial 2016-07-08 11:17:49 UTC
(In reply to jospezial from comment #16)
> I can't use ALT+TAB while holding a website element with the mouse to drag
> and drop it to another program.

That does not work again.
Comment 28 Pacho Ramos gentoo-dev 2016-07-09 12:46:08 UTC
I don't think adding comments here about each new issue with gtk3 and firefox nightlies will help much, specially if your setup is not running Adwaita (that is probably what upstream people is testing).

If you are still hitting issues with latest beta, open a bug in upstream side and paste the link here to let us track the issue

Regarding the non-bin versions, I don't know what are the plans for keeping -47 version long time here (as I don't think it's a candidate to be stabilized), but using Fedora patch would be the way to go I think. Regarding -bin packages, please try to report to upstream to ensure -48 is fixed
Comment 29 Ian Stakenvicius (RETIRED) gentoo-dev 2016-07-10 04:22:18 UTC
(In reply to Pacho Ramos from comment #28)
> I don't think adding comments here about each new issue with gtk3 and
> firefox nightlies will help much, specially if your setup is not running
> Adwaita (that is probably what upstream people is testing).
> 
> If you are still hitting issues with latest beta, open a bug in upstream
> side and paste the link here to let us track the issue
> 
> Regarding the non-bin versions, I don't know what are the plans for keeping
> -47 version long time here (as I don't think it's a candidate to be
> stabilized), but using Fedora patch would be the way to go I think.
> Regarding -bin packages, please try to report to upstream to ensure -48 is
> fixed

firefox-47 will be dropped once firefox-48 his the gentoo repo.  I am in the works of trying to apply the gtk3.20 changes to firefox-48beta now but its slow going as a lot of code has changed (c -> c++).  I do very much want this to be fixed in 48.0 upon release.  For 45.x I will be removing gtk3 support prior to gtk3.20 going stable, since gtk3 support did not become upstream default until 46.0

Unfortunately I can't speak for the upstream-built binaries; it looks like they will not be fixed for sure until firefox-49.
Comment 30 Pacho Ramos gentoo-dev 2016-07-10 07:09:46 UTC
Thanks for your efforts :)
Comment 31 Andreas Klauer 2016-07-10 07:24:09 UTC
This issue came up on my ~amd64 system after a recent world update with firefox-bin 47... couldn't get the patch posted earlier to work, and I have nothing that depends on x11-libs/gtk+-3.20.6 specifically, so I decided to mask this version locally for now. Came here to see if it was already reported and as expected people are working on it.

Thank you so much for your efforts :)
Comment 32 Franz Trischberger 2016-07-10 07:37:07 UTC
(In reply to Pacho Ramos from comment #17)
> This is the (big) gtk+-3.20 patch applied in Fedora, maybe it will help
> people (but it is for 47.x versions)
> http://pkgs.fedoraproject.org/cgit/rpms/firefox.git/plain/firefox-gtk3-20.
> patch

I took the opportunity and applied the patch (via user-patches) for the recent firefox-47.0.1 update - works fine here.
@Andread Klauer: You need to build firefox on your own with "emerge firefox". The firefox-bin package installs the binary package released by upstream, so there is no chance to get the patch applied or even working ;)
Comment 33 Ian Stakenvicius (RETIRED) gentoo-dev 2016-07-26 17:54:27 UTC
Firefox-48.0-beta10 is available on mozilla overlay; if someone could emerge this and see if the GTK3 issues have been resolved, that would be very much appreciated!
Comment 34 poncho 2016-07-27 12:51:14 UTC
(In reply to Ian Stakenvicius from comment #33)
> Firefox-48.0-beta10 is available on mozilla overlay; if someone could emerge
> this and see if the GTK3 issues have been resolved, that would be very much
> appreciated!

The scrollbars are working here with Firefox-48.0-beta10 and gtk+-3.20.6
Comment 35 Marc Arens 2016-07-27 21:50:55 UTC
i can confirm that scrollbars and some checkboxes are being rendered properly again in firefox-48.0-beta10 and gtk-3.20.6.

Text seems to have become bigger though e.g. text fields "Personal Tags" and "CC List Add" are too huge and e.g. the dragger of this comment box isn't properly aligned either. But it's an improvement to firefox-47 and probably should be handled in another bug.
Comment 36 Marc Arens 2016-07-27 21:52:42 UTC
Created attachment 441766 [details]
bigger fonts
Comment 37 Ian Stakenvicius (RETIRED) gentoo-dev 2016-07-28 14:19:06 UTC
So what do people think -- when firefox-48 is released should we consider the bug to be closed (and unblock gtk-3.20) despite a few strange rendering issues with in-page content (which can go to a new bug), or are these issues still important enough to block gtk-3.20 ?
Comment 38 Marc Arens 2016-07-29 13:29:09 UTC
(In reply to Ian Stakenvicius from comment #37)
> So what do people think -- when firefox-48 is released should we consider
> the bug to be closed (and unblock gtk-3.20) despite a few strange rendering
> issues with in-page content (which can go to a new bug), or are these issues
> still important enough to block gtk-3.20 ?

Hmm complicated. it seems gtk-3.20 will cause trouble for many users anyway googling / reading https://igurublog.wordpress.com/2016/04/20/heads-up-gtk-3-20-off-to-a-troubled-start/ firefox and thunderbird might be the most visible ones besides all the broken theme issues. I wouldn't want to introduce that into stable. I'm even thinking about masking it. What a mess.
Comment 39 poncho 2016-07-30 09:16:43 UTC
(In reply to Ian Stakenvicius from comment #37)
> So what do people think -- when firefox-48 is released should we consider
> the bug to be closed (and unblock gtk-3.20) despite a few strange rendering
> issues with in-page content (which can go to a new bug), or are these issues
> still important enough to block gtk-3.20 ?

Despite minor glitches, firefox-48 with gtk-3.20 is usable for me.
Comment 40 Pacho Ramos gentoo-dev 2016-08-08 14:21:07 UTC
Personally I would close this one and report the remaining issues as individual bugs for firefox-48 (probably also reporting to upstream to let them know the issues)
Comment 41 Ian Stakenvicius (RETIRED) gentoo-dev 2016-08-08 18:15:44 UTC
(In reply to Pacho Ramos from comment #40)
> Personally I would close this one and report the remaining issues as
> individual bugs for firefox-48 (probably also reporting to upstream to let
> them know the issues)

I concurr.  Marking RESO/WONTFIX as gtk+-3.20 and above support will be for firefox-48 and above; anything older will be pegged to gtk2.
Comment 42 Andreas Klauer 2016-10-14 11:21:51 UTC
Created attachment 450202 [details]
firefox-bin-49.0 using gtk+ 3.18.9 (ok) vs. 3.20.9 (black outlines)

Using firefox-bin-49, I still downgrade gtk+ to 3.18.

Although it's no longer outright broken (scrollbars) it looks horrible. There are full black outlines for everything (url bars, menus, ...) that should be soft grays. (Attached gif shows same version of firefox, with gtk+ 3.18.9 vs. 3.20.9)

Not sure how many people realize this is a bug... since it could also be a poor design choice.

ArchLinux has the same issue.
Comment 43 Ian Stakenvicius (RETIRED) gentoo-dev 2016-10-14 12:13:28 UTC
(In reply to Andreas Klauer from comment #42)
> Created attachment 450202 [details]
> firefox-bin-49.0 using gtk+ 3.18.9 (ok) vs. 3.20.9 (black outlines)
> 
> Using firefox-bin-49, I still downgrade gtk+ to 3.18.
> 
> Although it's no longer outright broken (scrollbars) it looks horrible.
> There are full black outlines for everything (url bars, menus, ...) that
> should be soft grays. (Attached gif shows same version of firefox, with gtk+
> 3.18.9 vs. 3.20.9)
> 
> Not sure how many people realize this is a bug... since it could also be a
> poor design choice.
> 
> ArchLinux has the same issue.

A significant portion of these issues are due to the theme itself that you're using not being fully compliant with gtk+-3.20 -- I had to bump my own theme (x11-themes/greybird) before things were even close to being OK.  I highly recommend you ensure gtk+-3.20 compliance and/or look for new themes that are just plain better under this newer gtk (for instance the adwaita default theme is pretty nasty imo, and not just on firefox).

Also FYI, many the gtk+ fixes have landed on firefox-50 which is in beta on mozilla-overlay.