Theme header background image flickers/blinks/flashes when changing/opening window

VERIFIED FIXED in Firefox 68
(NeedInfo from)

Status

defect
P2
normal
VERIFIED FIXED
3 months ago
17 days ago

People

(Reporter: Virtual, Assigned: kmag, NeedInfo)

Tracking

(Regression, {nightly-community, regression})

Firefox 68
mozilla68

Firefox Tracking Flags

(firefox-esr60 unaffected, firefox66 unaffected, firefox67 wontfix, firefox67.0.5 wontfix, firefox68+ verified)

Details

Attachments

(4 attachments, 2 obsolete attachments)

STR:

  1. Install some Theme
  2. Open 2 browser windows
  3. Change between them
    and see that theme flickers/blinks/flashes on black when changing/opening window
Posted file mozregression-gui.txt (obsolete) —

Regression started in Mozilla Firefox Nightly 68.0a1 (2019-03-31).

Maybe it's caused by:
bug #1539026
bug #1525762
bug #1539925

opt and pgo builds searching is broken in mozregression-gui.
Only debug builds works properly.

Regression caused by:

Found commit message:
Bug 1539925: Part 4 - Remove stray mochitest install.rdf file. r=aswan
Differential Revision: https://phabricator.services.mozilla.com/D25292

Blocks: 1539925
Has Regression Range: --- → yes
Flags: needinfo?(kmaglione+bmo)

STR2:

  1. Open this website page:
    https://net-s.pl/produkt/amd-ryzen-7-2700-octo-core-320ghz-20mb-am4-65w-12nm-box-844443
  2. Press CPU image to show bigger image in new window
    and see that theme flickers/blinks/flashes on black on background window when opening new foreground window
Summary: Theme flickers/blinks/flashes on black when changing/opening window → Theme flickers/blinks/flashes on black when changing/opening window after landing patches from bug #1539925
Component: Theme → Add-ons Manager
Product: Firefox → Toolkit
No longer blocks: 1539925
Assignee

Updated

2 months ago
Severity: major → normal
Component: Add-ons Manager → Themes
Flags: needinfo?(kmaglione+bmo)
Product: Toolkit → WebExtensions
Summary: Theme flickers/blinks/flashes on black when changing/opening window after landing patches from bug #1539925 → Restore header image pre-cropping for absurdly large header images
Version: 68 Branch → Firefox 68

Updated

2 months ago
Regressed by: 1525762
No longer regressed by: 1539925

Per comment #2 mozregression-gui pointing that this bug regressed by bug #1539925, not by bug #1525762. Is it wrong, that you change it?

Flags: needinfo?(ntim.bugs)

Comment 7

2 months ago

(In reply to Virtual_ManPL [:Virtual] - (please needinfo? me - so I will see your comment/reply/question/etc.) from comment #6)

Per comment #2 mozregression-gui pointing that this bug regressed by bug #1539925, not by bug #1525762. Is it wrong, that you change it?

From Kris’ new summary, bug 1525762 sounds more likely since that one actually removed the image cropper.

Flags: needinfo?(ntim.bugs)

OK. Thank you very much for detailed information.

Does this happen on Windows between windows only, or between tabs as well?

Flags: needinfo?(kraj)

cosmin, can you take a look?

Flags: needinfo?(kraj) → needinfo?(cbadescu)

@ David Durst [:ddurst] - Issue is reproducible for me only when I switch between windows, switching between tabs are unaffected.

Comment 12

2 months ago
Posted video Bug1540984.mp4

I can reproduce this issue on Firefox 68.0a1 (20190416220148) under Win 7 64-bit and Mac OS X 10.14.1

Please see the attached video.

(In reply to David Durst [:ddurst] from comment #9)

Does this happen on Windows between windows only, or between tabs as well?

This issue happens only between windows.

I did a regression window and observed that Bug 1525762 is the one that caused this regression.

INFO: Last good revision: 9b129ff965d75b364c9bdb4d737542cb4d1c40d1
INFO: First bad revision: c06dfc552c647a6ce96f35cd84c32a589dc85608
INFO: Pushlog:
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=9b129ff965d75b364c9bdb4d737542cb4d1c40d1&tochange=c06dfc552c647a6ce96f35cd84c32a589dc85608

Flags: needinfo?(cbadescu)

I think we should try to fix this in 68 if possible.

Mike, can we find someone to work on this?

Flags: needinfo?(mdeboer)

Comment 15

2 months ago

A backout of https://hg.mozilla.org/mozilla-central/rev/ba1529f7fd78 would suffice, but maybe Kris had something different in mind.

Comment 17

2 months ago

(In reply to Tim Nguyen :ntim from comment #15)

A backout of https://hg.mozilla.org/mozilla-central/rev/ba1529f7fd78 would suffice, but maybe Kris had something different in mind.

Oh wait, it will not work with static themes, since they use moz-extension:// images which are not covered by the image cropper. I'll leave this to someone else, since I don't have time or Windows 7 to test this.

Comment 18

2 months ago

I also see this on Ubuntu 19.04 when switching between multiple Firefox windows, so all platforms are affected.

Interestingly it does not happen when switching between private and non-private windows.

OS: Windows 7 → All

Comment 19

2 months ago

(In reply to Kestrel from comment #18)

I also see this on Ubuntu 19.04 when switching between multiple Firefox windows, so all platforms are affected.

Interestingly it does not happen when switching between private and non-private windows.

I can't reproduce this on macOS, but presumably because it's ok with higher resolution images.

Comment 20

2 months ago

(In reply to Tim Nguyen :ntim from comment #19)

I can't reproduce this on macOS, but presumably because it's ok with higher resolution images.

Comment 12 mentions it occurring on Mac OS X 10.14.1.

@ Tim Nguyen :ntim - Please retry with updated STRs, maybe issue will finally be reproducible for you too.

Updated STRs:

STR1:

  1. Install "Virtualfox" Theme ( https://addons.mozilla.org/addon/virtualfox/ )
  2. Open 2 browser windows
  3. Change between them
    and see that theme flickers/blinks/flashes on black when changing/opening window

STR2:

  1. Install "Virtualfox" Theme ( https://addons.mozilla.org/addon/virtualfox/ )
  2. Open this website page:
    https://net-s.pl/produkt/amd-ryzen-7-2700-octo-core-320ghz-20mb-am4-65w-12nm-box-844443
  3. Press CPU image to show bigger image in new window
    and see that theme flickers/blinks/flashes on black on background window when opening new foreground window
Flags: needinfo?(ntim.bugs)

Comment 22

2 months ago

Yeah, I can reproduce now, thanks. I'm busy with other things though, so I'm not planning to take this.

Flags: needinfo?(ntim.bugs)

Comment 23

2 months ago
Posted video MacOS.mov

Mac OS X 10.14.1

Assignee

Comment 24

2 months ago

(In reply to Tim Nguyen :ntim from comment #15)

A backout of https://hg.mozilla.org/mozilla-central/rev/ba1529f7fd78 would suffice, but maybe Kris had something different in mind.

It would not.

Since this was clearly regressed by bug 1525762, I think it'd be a good start for Kris to take a look to see if the image cropper can be re-jigged in a different way.
Or perhaps redirect top :aswan, who reviewed the patches(?)

Flags: needinfo?(mdeboer) → needinfo?(kmaglione+bmo)

I've asked for this side-effect to try to be fixed in 68. Product isn't that worried about it, and it's ultimately their call.

I've updated the summary because how to fix it should be up to the fixer; what to solve for is the requirement.

Assignee: nobody → kmaglione+bmo
Flags: needinfo?(kmaglione+bmo)
Summary: Restore header image pre-cropping for absurdly large header images → Theme header background image flickers/blinks/flashes when changing/opening window
Priority: -- → P2
Assignee

Comment 27

2 months ago

For large header images, built-in memory caching does not work correctly, and
we wind up seeing a flicker any time a new window is opened or becomes active.
This patch caches the header image in an Image element at startup, and uses
that element as the backing for the header image in all browser windows.

Assignee

Comment 28

2 months ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/6159d01c9341088edcabb318259c8ce6201c61ac
Bug 1540984: Pre-load theme header image and share across all windows. r=aswan

Backed out for assertion failures on Allocator.cpp:157

backout: https://hg.mozilla.org/integration/mozilla-inbound/rev/a722a039fb671037fa7570efb855c81ea9e3312e

push: https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&revision=6159d01c9341088edcabb318259c8ce6201c61ac&group_state=expanded&selectedJob=244350089

failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=244350066&repo=mozilla-inbound&lineNumber=54907

00:33:05 INFO - TEST-START | devtools/shared/webconsole/test/test_cached_messages.html
00:33:05 INFO - GECKO(2211) | ++DOMWINDOW == 43 (0x13074b800) [pid = 2211] [serial = 43] [outer = 0x131105020]
00:33:05 INFO - GECKO(2211) | console.log: "foobarBaz-log" (void 0)
00:33:05 INFO - GECKO(2211) | console.info: "foobarBaz-info" null
00:33:05 INFO - GECKO(2211) | console.warn: "foobarBaz-warn" ({})
00:33:05 INFO - GECKO(2211) | [2211, Main Thread] WARNING: Windowless browser was not closed prior to destruction: file /builds/worker/workspace/build/src/xpfe/appshell/nsAppShellService.cpp, line 410
00:33:05 INFO - GECKO(2211) | Assertion failure: cx->isNurseryAllocAllowed(), at /builds/worker/workspace/build/src/js/src/gc/Allocator.cpp:157
00:33:06 INFO - TEST-INFO | Main app process: exit 1
00:33:06 INFO - Buffered messages finished
00:33:06 ERROR - TEST-UNEXPECTED-FAIL | devtools/shared/webconsole/test/test_cached_messages.html | application terminated with exit code 1
00:33:06 INFO - runtests.py | Application ran for: 0:00:13.447991
00:33:06 INFO - zombiecheck | Reading PID log: /var/folders/61/88b5s4517kg5b0_xk4q4ylk000000x/T/tmpTZutOSpidlog
00:33:06 INFO - mozcrash Copy/paste: /Users/cltbld/tasks/task_1556842754/build/macosx64-minidump_stackwalk /var/folders/61/88b5s4517kg5b0_xk4q4ylk000000x/T/tmpPJmSLs.mozrunner/minidumps/568928C2-BD8A-48B8-9AD1-C57EA4339694.dmp /Users/cltbld/tasks/task_1556842754/build/symbols
00:33:13 INFO - mozcrash Saved minidump as /Users/cltbld/tasks/task_1556842754/build/blobber_upload_dir/568928C2-BD8A-48B8-9AD1-C57EA4339694.dmp
00:33:13 INFO - mozcrash Saved app info as /Users/cltbld/tasks/task_1556842754/build/blobber_upload_dir/568928C2-BD8A-48B8-9AD1-C57EA4339694.extra
00:33:13 INFO - PROCESS-CRASH | devtools/shared/webconsole/test/test_cached_messages.html | application crashed [@ JSString* js::gc::GCRuntime::tryNewNurseryString<(js::AllowGC)1>(JSContext*, unsigned long, js::gc::AllocKind)]

Flags: needinfo?(kmaglione+bmo)
Assignee

Comment 30

2 months ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/e330d90e540084087b6a9c155eabe069ec690c49
Bug 1540984: Pre-load theme header image and share across all windows. r=aswan

Comment 31

Last month
bugherder
Status: ASSIGNED → RESOLVED
Closed: Last month
Resolution: --- → FIXED
Target Milestone: --- → mozilla68

I'm confirming that bug is fixed, starting in Mozilla Firefox Nightly 68.0a1 (2019-05-04), so I'm marking this bug as VERIFIED.
Thank you very much! \o/

Status: RESOLVED → VERIFIED
Attachment #9060026 - Attachment is obsolete: true
Assignee

Updated

24 days ago
See Also: → 1553923
You need to log in before you can comment on or make changes to this bug.