Closed Bug 1989611 Opened 2 months ago Closed 2 months ago

Popup widgets (e.g. context-menus, autocomplete dropdowns, select menu-popups) sometimes briefly flash a background with corruption from other tabs/windows before populating with their content

Categories

(Core :: Widget: Gtk, defect)

defect

Tracking

()

RESOLVED DUPLICATE of bug 1986262

People

(Reporter: dholbert, Unassigned)

Details

Attachments

(3 files)

I haven't managed to get concrete STR yet or capture this in a screencast, but I figured I'd file a bug...

Starting sometime this week (maybe even late last week?), I'm noticing that menu-popup-widgets often briefly render as bright white, before they're populated with their background.

This is intermittent; but sometimes I see it happening several times in a row, sometimes it doesn't happen at all. It's pretty noticeable when it happens, though, because I'm using dark mode, so the bright white flash stands out quite a bit.

I've seen it on:

  • right-click context menu (when right-clicking a blank area of a page, or a link)
  • <select> dropdown-menu popups
  • the autocomplete dropdown-menu that gets spawned from some <input> textfields in forms.

I'm using Ubuntu 25.04 with Nightly 145.0a1 (2025-09-18), which is affected (I saw the bug a few minutes ago).

Hmm, so I managed to record a screencast where the bug reproduced - but when I play back my screencast, the popups render with a solid black background. But in real life, they showed up on-screen with a solid white background.

(In reply to Daniel Holbert [:dholbert] from comment #1)

But in real life, they showed up on-screen with a solid white background.

Ah, I just captured a video on my phone, and when I watch that carefully, it turns out the briefly-flashed-background isn't actually solid-white -- it's got graphical artifacts from some other open tab, I think. I'll post a clip and screenshot to demonstrate.

Attached video video showing the bug

Here's a brief video showing the bug. (Comment 4's snapshot is extracted from this video.)

This video was taken using a fresh profile with Firefox 145.0a1 (2025-09-19)

Here's my about:support graphics section, from the fresh profile where I recorded the above video.

Also worth mentioning:

  • I've rebooted / powered-off my machine several times and that doesn't appear to impact this bug.
  • It's entirely possible this is an Ubuntu/graphics-driver bug which was introduced by some recent system update; no idea who the culprit is at this point.

(In reply to Daniel Holbert [:dholbert] from comment #0)

Starting sometime this week (maybe even late last week?), I'm noticing that menu-popup-widgets often briefly render as bright white, before they're populated with their background.

This goes back further than that. For example, I can repro in Nightly 143.0a1 2025-08-01.

My rough STR right now are:
(1) Start Firefox with a fresh profile, on a system with a dark theme in your OS preferences.
(2) Open 20+ new windows (hold Ctrl and mash "N")
(3) In one of those windows, open 15+ tabs with https://gutenberg.org/ (e.g. visit that site in one tab, and then right-click the tab and press D, and repeat the right-click/"D" action a bunch of times)
(4) Open a new tab and visit about:blank (should give you a blank dark page)
(5) (optional) Start recording a video with a camera, so you can confirm/investigate what you might be about to see.
(6) Right-click the about:blank tab several times.

ACTUAL RESULTS:
The context menu briefly shows a bit of graphical corruption as it appears, usually taken from one of the newtab story tiles.

EXPECTED RESULTS:
No such corruption.

Often only the first context-menu (the one that I spawn in STR step 6) is the one that looks broken. If you repeatedly right-click, the subsequent ones often seem to be fine.

I think this is a regression from this commit for bug 1980143:
Bug 1980143 - Prevent generating ::backdrop pseudo-elements for non-elements.
https://hg-edge.mozilla.org/mozilla-central/rev/534e5fd7c3124345498c60c306b147da1dc80a63

At least: I was able to reproduce the issue on the first try (with STR in previous comment) using a mozregression-launched build from that revision (running mozregression --repo autoland --launch 534e5fd7c3124345498c60c306b147da1dc80a63), whereas I could not reproduce in three trials of the prior revision (running mozregression --repo autoland --launch 4b9fb41e015ed91b89899c15e1792891024d3c11).

It seems conceivable that the context-menu might have a ::backdrop which was rendering a solid color here, and now we're no longer generating/rendering it, and we're left with graphical corruption...?

emilio, can you reproduce and does that connection seem plausible?

(Tentatively flagging as a regression from that bug, for now.)

Keywords: regression
Regressed by: 1980143
Summary: Popup widgets (e.g. context-menus, autocomplete dropdowns, select menu-popups) sometimes briefly flash a solid-white background before populating with their content, which is particularly noticable/annoying in dark mode → Popup widgets (e.g. context-menus, autocomplete dropdowns, select menu-popups) sometimes briefly flash a background with corruption from other tabs/windows before populating with their content

Hmm, maybe not a regression from that commit after all; that commit just added a new conditional-return -- I tried commenting out that added chunk in a reasonably up-to-date local-build (enable-optimize/disable-debug to be similar to Nightly), and I can still reproduce the bug in that build.

No longer regressed by: 1980143

(In reply to Daniel Holbert [:dholbert] from comment #7)

I think this is a regression from this commit for bug 1980143:
Bug 1980143 - Prevent generating ::backdrop pseudo-elements for non-elements.
https://hg-edge.mozilla.org/mozilla-central/rev/534e5fd7c3124345498c60c306b147da1dc80a63

At least: I was able to reproduce the issue on the first try (with STR in previous comment) using a mozregression-launched build from that revision (running mozregression --repo autoland --launch 534e5fd7c3124345498c60c306b147da1dc80a63), whereas I could not reproduce in three trials of the prior revision (running mozregression --repo autoland --launch 4b9fb41e015ed91b89899c15e1792891024d3c11).

Update, I've confirmed I can reproduce in older builds (now using -B debug, not entirely sure if that matters/helps, but it might).

This is still pretty fiddly, sometimes not-reproducing with a build and then reproducing when I retest (following the same steps from comment 6), so I don't have a ton of confidence whether it's a regression or how far back it goes.

For the record, though: the oldest "known-bad" debug build (where I repro'd the bug) so far is from this commit:
https://hg-edge.mozilla.org/integration/autoland/rev/f3f55220cc4830f0b40f8a8efb39663ed84a8bef

(No suspicion on that commit in particular -- it's just an arbitrary commit that I happened to land on and confirm is bad while trying to bisect)

Keywords: regression

This looks very similar to bug 1986262 - "[wayland] Context menus still flash underlying window when first drawn". Could you please check if your issue is the same as that one?

Thanks - yeah, looks like it's the same issue.

Status: NEW → RESOLVED
Closed: 2 months ago
Duplicate of bug: 1986262
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: