Closed Bug 1417281 Opened 2 years ago Closed 2 years ago

stylo-chrome: Window is not restyled correctly immediately after changing theme

Categories

(Core :: CSS Parsing and Computation, defect, P1)

defect

Tracking

()

RESOLVED FIXED
mozilla59
Tracking Status
firefox59 --- fixed

People

(Reporter: xidorn, Assigned: xidorn)

References

Details

Attachments

(2 files)

Steps to reproduce:
1. Open the hamburger menu
2. Click "Customize..."
3. Click "Themes" on the bottom bar
4. Hover "Light" or "Dark" theme
5. Click one of the theme

Expected result:
When hovering the themes in step 4 or after clicking the themes in step 5, the UI should be showing the given theme immediately.

Actual result:
The UI is rendered in a weird state, and keeps being so until refocus / switch tab. On Windows, I'm seeing that the whole toolbar is painted in the color of titlebar, and browser action icons are in their default icon.

I suspect this is the reason of various extension-related mochitest failures.
It is not clear to me, though, how should I figure out what's going on there...
OK I guess it's related to the :-moz-lwtheme* pseudo-classes not being correctly invalidated...
Priority: -- → P1
Assignee: nobody → xidorn+moz
I have a patch fixes the STR in comment 0 and some of the test failures... but there are still failures :/
Comment on attachment 8928356 [details]
Bug 1417281 part 1 - Trigger subtree restyle when lwtheme / lwthemetextcolor attribute on root element of XUL document is changed.

https://reviewboard.mozilla.org/r/199564/#review204680
Attachment #8928356 - Flags: review?(cam) → review+
Comment on attachment 8928357 [details]
Bug 1417281 part 2 - Add 32x32 theme icon in browser_ext_browserAction_theme_icons.js test so that it works as expected on HiDPI as well.

https://reviewboard.mozilla.org/r/199566/#review204776
Attachment #8928357 - Flags: review?(mixedpuppy) → review+
Pushed by xquan@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/7adafef3b02d
part 1 - Trigger subtree restyle when lwtheme / lwthemetextcolor attribute on root element of XUL document is changed. r=heycam
https://hg.mozilla.org/integration/autoland/rev/257ff14840e0
part 2 - Add 32x32 theme icon in browser_ext_browserAction_theme_icons.js test so that it works as expected on HiDPI as well. r=mixedpuppy
https://hg.mozilla.org/mozilla-central/rev/7adafef3b02d
https://hg.mozilla.org/mozilla-central/rev/257ff14840e0
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla59
I tried on an older version of Nightly (2017-11-14) using Windows 10 x64, macOS 10.13 and Ubuntu 16.04 x64, but I couldn't reproduce the bug. Can you please make a gif about the issue in order for me to understand the problem better?
Flags: needinfo?(xidorn+moz)
This is a stylo-chrome bug. Have you set "layout.css.servo.chrome.enabled" to true when testing?

Actually... given stylo-chrome is not enabled on 59, this probably isn't worth testing.
Flags: needinfo?(xidorn+moz)
I retested everything on latest Nightly on Windows 10x64, macOS 10.13 and Ubuntu 16.04 x64 and the pref layout.css.servo.chrome.enabled is set on true by default and the bug is not reproducing anymore.

On the other hand when I tried to verify the fix on Firefox 59.0 and changed the pref layout.css.servo.chrome.enabled on true, verytime I tried to hover over the themes, the hangdoor disappeared. I couldn't change the theme. I can't verify this fix on 59.0.
You need to log in before you can comment on or make changes to this bug.