Background color and extension flickering on page navigation
Categories
(Core :: Graphics: Layers, defect, P3)
Tracking
()
People
(Reporter: kael, Unassigned)
Details
Attachments
(2 files)
Recently I've started getting really nasty brief flickering when navigating between pages on certain websites. It's the worst for sites I have the Owl extension enabled on (because it applies a brightness inverting filter for eye comfort), but I've noticed it on regular websites with dark backgrounds where no extensions are active.
It looks like in the Owl case, the page is rendered for a couple frames before the extension is allowed to run and apply any styles - its icon disappears from the address bar.
For the sites without the extension I get a frame or two of a bright (default?) background.
I don't know precisely when this changed, but it was very recent. On my 120fps monitor the bad rendering lasts 2-3 frames, but on my 60fps monitor it's typically one. Sometimes it doesn't happen.
Attaching a video of it, will attach about:support too. NOTE: Photosensitivity warning for this!!!
Reporter | ||
Comment 1•4 years ago
|
||
Reporter | ||
Comment 2•4 years ago
|
||
This reproduces on a fresh profile if I immediately install Owl and enable it for Hacker News (like in the video) and browse around.
I tried mozregression, but I find the regression window to be nonsense. I think there's some other factor that causes the bug to not happen on certain runs, on some runs it happened on my very first navigation and on others I couldn't get it to happen after dozens of navs (so I marked those builds as good).
I will note that in the mozregression run I set it to load hacker news at startup, and when it did that I saw a few frames of bright (owl hasn't applied its styles yet) at start every time, which is similar to how in the screen recording it seems like the page renders for a couple frames before the extension is allowed to apply its userstyles.
2021-11-07T18:21:20.046000: INFO : platform_version: 94.0a1
2021-11-07T18:21:42.994000: INFO : Narrowed integration regression window from [fbae5c0c, 4eb8f7b7] (4 builds) to [589c7732, 4eb8f7b7] (2 builds) (~1 steps left)
2021-11-07T18:21:43.006000: DEBUG : Starting merge handling...
2021-11-07T18:21:43.006000: DEBUG : Using url: https://hg.mozilla.org/integration/autoland/json-pushes?changeset=4eb8f7b78caa13d5bc8ce33e94a691c4d0d0f9a6&full=1
2021-11-07T18:21:43.006000: DEBUG : redo: attempt 1/3
2021-11-07T18:21:43.006000: DEBUG : redo: retry: calling _default_get with args: ('https://hg.mozilla.org/integration/autoland/json-pushes?changeset=4eb8f7b78caa13d5bc8ce33e94a691c4d0d0f9a6&full=1',), kwargs: {}, attempt #1
2021-11-07T18:21:43.008000: DEBUG : urllib3.connectionpool: Resetting dropped connection: hg.mozilla.org
2021-11-07T18:21:43.564000: DEBUG : urllib3.connectionpool: https://hg.mozilla.org:443 "GET /integration/autoland/json-pushes?changeset=4eb8f7b78caa13d5bc8ce33e94a691c4d0d0f9a6&full=1 HTTP/1.1" 200 None
2021-11-07T18:21:43.585000: DEBUG : Found commit message:
Bug 1732030 - Fix expectations for WebAssembly.Function tests; r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D126351
2021-11-07T18:21:43.585000: DEBUG : Did not find a branch, checking all integration branches
2021-11-07T18:21:43.586000: INFO : The bisection is done.
2021-11-07T18:21:43.588000: INFO : Stopped
Comment 3•4 years ago
|
||
The severity field is not set for this bug.
:jimm, could you have a look please?
For more information, please visit auto_nag documentation.
![]() |
||
Comment 4•4 years ago
|
||
bouncing this to media because I can't view the video.
Reporter | ||
Comment 5•4 years ago
|
||
Should I upload the mp4 file to youtube? Or are you just not able to view it due to photosensitivity
Comment 6•4 years ago
|
||
The severity field is not set for this bug.
:jimm, could you have a look please?
For more information, please visit auto_nag documentation.
Comment 7•4 years ago
|
||
The video works fine for me. Jimm, can you elaborate what's not working?
![]() |
||
Updated•4 years ago
|
Comment 8•4 years ago
|
||
The severity field is not set for this bug.
:jimm, could you have a look please?
For more information, please visit auto_nag documentation.
![]() |
||
Updated•4 years ago
|
Comment 9•4 years ago
|
||
Perhaps this is our flash of unstyled content not supporting dark mode?
Reporter | ||
Comment 10•4 years ago
|
||
In this case the content isn't dark mode aware period, the Owl extension is applying CSS filters on a per-site basis
Comment 11•4 years ago
|
||
I wonder if this is basically bug 1740499 (where we're unsuppressing painting too fast, before the extension has had a chance of injecting content)... Katelyn, does a build from https://treeherder.mozilla.org/#/jobs?repo=try&revision=07076d5246dcd43457213aa474a2d6d933360813 reproduce the issue for you?
Reporter | ||
Comment 12•4 years ago
|
||
Sorry, I stared at that treeherder page for a while and clicked various links and I cannot figure out how to download a Windows build.
Comment 13•4 years ago
|
||
Sorry, totally my fault. Click the "B" task for a given platform, and in the "Artifact and debugging tools" tab there's a bunch of stuff, including a target.{dmg,zip,tar.bz2}
which contains the Firefox binary. So for Windows x64 it would be this link: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/K0ZlQipfQ-ixvZx_pvUsAg/runs/0/artifacts/public/build/target.zip
Just extract it somewhere and you should be able to run the firefox.exe
binary in there.
Reporter | ||
Comment 14•4 years ago
|
||
Hi,
Finally got a chance to test that build out successfully. It doesn't start unless I manually exclude the whole folder from Windows Defender, which is pretty weird. Anyway, it does seem like that build does not have the problem - there's a flash of bright white on the initial load of the website for a couple frames until Owl loads, but after that despite the owl icon flickering in the address bar for ~1 frame, I can't produce any page rendering where the extension styles haven't applied. I browsed around for about 3 minutes and didn't see any flashes. It would certainly be nice if it worked right on that initial load too but that's relatively minor since many users probably just leave Firefox open.
Thanks
-kg
![]() |
||
Updated•4 years ago
|
Comment 15•4 years ago
|
||
Thanks, let's dupe then.
Description
•