Closed Bug 1315527 Opened 4 years ago Closed 4 years ago

[GTK 3.20] borders and separators are now black, rather than shades of gray

Categories

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

50 Branch
defect

Tracking

()

RESOLVED FIXED
mozilla53
Tracking Status
firefox50 --- wontfix
firefox51 --- wontfix
firefox52 --- fixed
firefox53 --- fixed

People

(Reporter: vummiess, Assigned: karlt)

References

(Blocks 1 open bug)

Details

(Keywords: regression, Whiteboard: tpi:+)

Attachments

(5 files)

Attached image Firefox 49 (good)
this may have been introduced in bug 1266914 ...

starting in 50, borders around e.g. the location bar and menu have been switched from a nice shade of gray to a rather jarring black; starting in 51, the separators in the location bar are also switched to black (along with remaining separators in menu), and the background in the menu is switched to white. see attached screen captures comparing 49 (good), 50 (worse), 51 (worst).
this may be related -- starting in Firefox 50, the menu highlight background color is missing in some themes (e.g. BlueMenta).
(In reply to vummiess from comment #0)
> starting in 50, borders around e.g. the location bar and menu have been
> switched from a nice shade of gray to a rather jarring black;

What is the libgtk-3 version installed?

Do you see this with Adwaita?
If not, what is the GTK theme in the first three screenshots.?

> starting in
> 51, the separators in the location bar are also switched to black (along
> with remaining separators in menu), and the background in the menu is
> switched to white.

The background may be intentional from bug 1293018 (and I guess that also changed separators to use the same color as the other borders).

(In reply to vummiess from comment #3)
> this may be related -- starting in Firefox 50, the menu highlight background
> color is missing in some themes (e.g. BlueMenta).

It may be related in that it is specific to a GTK version, but it would need quite a different fix in Firefox.  Can you file a separate bug for this, please?
If you can attach a screenshot of the highlighted menuitem in another GTK app, perhaps page 2 of gtk3-widget-factory, then that might help find the CSS source for the highlight, which would provide some clues on how to fix this.
See Also: → 1315668
(In reply to Karl Tomlinson (:karlt) from comment #4)
> What is the libgtk-3 version installed?

gtk3 version 3.20.9

> Do you see this with Adwaita?

Fedora doesn't have the full Adwaita theme for gtk3.

> If not, what is the GTK theme in the first three screenshots.?

"TraditionalOk". Other similar-colored themes are similarly affected.

> (In reply to vummiess from comment #3)
> > this may be related -- starting in Firefox 50, the menu highlight background
> > color is missing in some themes (e.g. BlueMenta).
> 
> It may be related in that it is specific to a GTK version, but it would need
> quite a different fix in Firefox.  Can you file a separate bug for this,
> please?

filed as bug 1315668
Summary: borders, separators, and backgrounds are now black and white, rather than shades of gray → borders and separators are now black, rather than shades of gray
Blocks: gtk-3.20
Priority: -- → P3
Whiteboard: tpi:+
See Also: → gtk-3.20
Summary: borders and separators are now black, rather than shades of gray → [GTK 3.20] borders and separators are now black, rather than shades of gray
See Also: 12669141303964
See Also: gtk-3.201266914
Yes, this would be fallout from changes for bug 1266914.

The bug does not demonstrate in Adwaita because that theme renders the frame border on the border node.  TraditionalOk renders the border on the frame's root node.

The following CSS in ~/.config/gtk-3.0/gtk.css demonstrates which is used:

frame border { border-color: green; }
frame { border-color: red;  }

It should be possible to try these in turn.
Assignee: nobody → karlt
Blocks: 1266914
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Keywords: regression
How odd I use Adwaita on fedora24 fedora25 and fedora26 and see no issue here..
(In reply to Bill Gianopoulos [:WG9s] from comment #7)
> How odd I use Adwaita on fedora24 fedora25 and fedora26 and see no issue
> here..

Yes, Adwaita works fine but TraditionalOk (and many/most other Fedora 24 themes) have the problem.

I downloaded Clearlooks-Phenix v7 (which looks identical to TraditionalOk but is more up-to-date) and switched to that as my theme.  Good work-around for now.
(In reply to Bob Farmer from comment #8)
> (In reply to Bill Gianopoulos [:WG9s] from comment #7)
> > How odd I use Adwaita on fedora24 fedora25 and fedora26 and see no issue
> > here..
> 
> Yes, Adwaita works fine but TraditionalOk (and many/most other Fedora 24
> themes) have the problem.
> 
> I downloaded Clearlooks-Phenix v7 (which looks identical to TraditionalOk
> but is more up-to-date) and switched to that as my theme.  Good work-around
> for now.

fedora24 fonts were designed to work with gtk 3.18 and might require changes to be completely 3.20 compatible.
Sorry I obviously meant themes and not fonts.
Comment on attachment 8812653 [details]
bug 1315527 check root node of frame for border color if no border on the "border" subnode

https://reviewboard.mozilla.org/r/94314/#review94516

Fine.
Attachment #8812653 - Flags: review?(stransky) → review+
Pushed by ktomlinson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a7fff8cc2988
check root node of frame for border color if no border on the "border" subnode r=stransky+263117
https://hg.mozilla.org/mozilla-central/rev/a7fff8cc2988
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
Should we consider backporting this to Aurora/Beta?
Flags: needinfo?(karlt)
Comment on attachment 8812653 [details]
bug 1315527 check root node of frame for border color if no border on the "border" subnode

Approval Request Comment
[Feature/Bug causing the regression]: bug 1266914
[User impact if declined]:
Polish issue affecting users with Mate desktop or themes, but only only with GTK 3.20 or newer.
Mate is popular enough to have its own flavor of Ubuntu.
https://distrowatch.com/table.php?distribution=ubuntumate
http://popcon.ubuntu.com/ would indicate it is installed in only about 0.5% of Ubuntu installations.  I wonder whether that includes Ubuntu MATE installations.
http://popcon.debian.org/ indicates 6-7%.
Still GTK 3.20 users will be only a fraction of that.

Really this is a minor bug, but before changes for bug 1266914 the border colors happened to be good, mostly by good luck, and so this is a regression.

[Is this code covered by automated tests?]: no
[Has the fix been verified in Nightly?]: no
[Needs manual test from QE? If yes, steps to reproduce]:  no
Needs installation of GTK themes, and so non-trivial to reproduce.
[List of other uplifts needed for the feature/fix]: none
[Is the change risky?]:
Some risk, contained to similar polish issues.
[Why is the change risky/not risky?]:
There is chance of another GTK theme being affected adversely in a similar manner to this regression from bug 1266914.  The additional code is better at detecting the colors used by the themes, but some themes may use gradient colors that are not handled here, and so the color picked may still differ from what the theme is using.
[String changes made/needed]: none
Flags: needinfo?(karlt)
Attachment #8812653 - Flags: approval-mozilla-aurora?
Although the long phase of the release cycle permits consideration of uplift for 52, I don't think this is worth the risk on 51.
Comment on attachment 8812653 [details]
bug 1315527 check root node of frame for border color if no border on the "border" subnode

fix for some gtk themes, take in aurora52
Attachment #8812653 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
You need to log in before you can comment on or make changes to this bug.