Closed Bug 1997790 Opened 10 months ago Closed 9 months ago

Tab hover preview appears for wrong tab when state changes during loading

Categories

(Firefox :: Tabbed Browser, defect, P2)

Firefox 145
defect

Tracking

()

VERIFIED FIXED
147 Branch
Tracking Status
firefox-esr115 --- unaffected
firefox-esr140 --- unaffected
firefox144 --- unaffected
firefox145 --- wontfix
firefox146 --- wontfix
firefox147 --- verified

People

(Reporter: ke5trel, Assigned: jswinarton)

References

(Depends on 1 open bug, Regression)

Details

(Keywords: regression, Whiteboard: [fidefe-tabgrps])

Attachments

(1 file)

STR:

  1. Visit a website that loads slowly like https://inv.nadeko.net on latest Nightly 146.0a1.
  2. Open several video links in background tabs.
  3. While the tabs are still loading, quickly pass the mouse cursor over them before they finish loading.
  4. Keep cursor hovered over last tab until tabs finish loading.

Expected:
Tab hover preview for last tab is shown the whole time.

Actual:
Tab hover preview appears for each tab as state changes during loading despite cursor not hovering over them.

Regression window:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=a4bf251f5ffc5a502a2d4fd6794714cac3ffa2c1&tochange=27a57130e67c0d4ecb79abd6e194199f0a79b656

Regressed by Bug 1991082.

:jswinarton, since you are the author of the regressor, bug 1991082, could you take a look? Also, could you set the severity field?

For more information, please visit BugBot documentation.

Flags: needinfo?(jswinarton)

I am also able to reproduce this by opening a Youtube video, paging to a few seconds before the end, and while the video is finishing, hover over the youtube tab, and then hover onto a different tab and stay there. After the video ends, Youtube auto starts another video and changes the tab title, which causes the panel to shift back to the Youtube tab.

The underlying cause is this call: https://searchfox.org/firefox-main/source/browser/components/tabbrowser/content/tab-hover-preview.mjs#258 which sets up a listener on TabAttrModified. It is removed in the corresponding deactivate call. But, if the tab panel moves (and is not deactivated), the listener is not deregistered, and we have a situation where multiple tabs have the listener (only the active tab should have it).

Flags: needinfo?(jswinarton)
Assignee: nobody → jswinarton
Severity: -- → S3
Priority: -- → P2
Whiteboard: [fidefe-tabgrps]

Set release status flags based on info from the regressing bug 1991082

This should be fixed by the most recent patch landed on bug1980036: https://phabricator.services.mozilla.com/D271783

Rares, would you or someone else mind verifying this fix works as expected? Thank you!

Flags: needinfo?(rdoghi)
Status: NEW → RESOLVED
Closed: 9 months ago
Depends on: 1980036
Flags: needinfo?(rdoghi)
Resolution: --- → FIXED
Target Milestone: --- → 147 Branch

I was able to reproduce this issue and verify the fix in our latest Nightly 147.0a1 (2025-11-13)

QA Whiteboard: [qa-ver-needed-c147/b146]
QA Contact: rdoghi

Updating the main status flag.

Status: RESOLVED → VERIFIED
QA Whiteboard: [qa-ver-needed-c147/b146] → [qa-ver-done-c147/b146]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: