Closed Bug 1584498 Opened 5 years ago Closed 4 years ago

Tabs sometimes jiggle the first time something is dragged over tab strip

Categories

(Firefox :: Tabbed Browser, defect, P2)

69 Branch
defect
Points:
2

Tracking

()

VERIFIED FIXED
Firefox 74
Iteration:
74.1 - Jan 6 - Jan 19
Tracking Status
firefox-esr68 --- unaffected
firefox69 --- wontfix
firefox70 --- wontfix
firefox71 --- wontfix
firefox72 --- wontfix
firefox73 --- verified
firefox74 --- verified

People

(Reporter: ke5trel, Assigned: dao)

References

(Regression)

Details

(Keywords: regression, reproducible)

Attachments

(4 files)

STR:

  1. Create an additional new window.
  2. Drag tab from new window into original window's tab strip.

Tabs briefly move 11px to the right when cursor dragged over tab strip, making them appear to jiggle. It only happens the first time, if it doesn't happen, restart the browser and try again.

Regression window:
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=5a18f5c929ab13bde25f7fff8ae72f87e8fa379c&tochange=8f15ea3b3223c91e84a671b7ad32916d62e1ca84

Regressed by Bug 1555060.

Flags: needinfo?(andrew.swan)
Priority: -- → P2

I can't reproduce this on osx with Firefox 69.0.1. Is this specific to Linux?

Flags: needinfo?(andrew.swan) → needinfo?(ke5trel)

I can't reproduce on Linux neither with 72.0a1 or with 71.0b6. Maybe there is an additional factor (wayland, webrender…) or it was fixed since then. Marking as wontfix for 71 as this seems an hard to reproduce edge case.

I can reproduce it on Windows 10 but it is extremely rare and very subtle, however it might be more common on slower hardware. It is much easier to reproduce on Ubuntu 19.10 (X11, stock configuration, new profile, no Wayland or WebRender).

It is caused by the .tab-drop-indicator being unhidden for a short time before having marginInlineStart calculated and applied, corresponding to the width of the icon (-12px in my case with the new icon, old icon was -11px). You can reliably see the the drop indicator shifting the tabs by breakpointing the following line:

https://searchfox.org/mozilla-central/rev/a92ed79b0bc746159fc31af1586adbfa9e45e264/browser/base/content/tabbrowser-tabs.js#616

Flags: needinfo?(ke5trel)

(In reply to Kestrel from comment #4)

It is caused by the .tab-drop-indicator being unhidden for a short time before having marginInlineStart calculated and applied, corresponding to the width of the icon (-12px in my case with the new icon, old icon was -11px). You can reliably see the the drop indicator shifting the tabs by breakpointing the following line:

https://searchfox.org/mozilla-central/rev/a92ed79b0bc746159fc31af1586adbfa9e45e264/browser/base/content/tabbrowser-tabs.js#616

Good catch!

Assignee: nobody → dao+bmo
Status: NEW → ASSIGNED
Iteration: --- → 74.1 - Jan 6 - Jan 19
Points: --- → 2
Pushed by dgottwald@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/b35db617be40
Set tab drop indicator width and negative margin in CSS instead of calculating them on the fly. r=harry
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 74
Flags: qe-verify+

I tried several times and I only managed to reproduce this one-time using Firefox 71.0a1 (20190927215713) on Windows 10x64. I did manage to reproduce it on a virtual machine with Ubuntu 19.04 installed several times using a new profile.
I also verified this with Firefox 74.0a1 (20200114214307) on Ubuntu 19.04, Windows 10x64, macOS 10.15 and Ubuntu 18.04 and I can no longer reproduce the issue. I tried several times and the initial issue is not reproducible anymore on the above platforms.

Comment on attachment 9119340 [details]
Bug 1584498 - Set tab drop indicator width and negative margin in CSS instead of calculating them on the fly. r=harry

Beta/Release Uplift Approval Request

  • User impact if declined: see comment 0
  • Is this code covered by automated tests?: No
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: Yes
  • If yes, steps to reproduce: see comment 0
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): Straightforward fix, baked in Nightly for a week
  • String changes made/needed:
Attachment #9119340 - Flags: approval-mozilla-beta?
QA Whiteboard: [qa-triaged]

Comment on attachment 9119340 [details]
Bug 1584498 - Set tab drop indicator width and negative margin in CSS instead of calculating them on the fly. r=harry

Low-risk fix for a UI glitch. Approved for 73.0b6.

Attachment #9119340 - Flags: approval-mozilla-beta? → approval-mozilla-beta+

Verified on 73.0b6 (20200116232741) on Windows 10x64, macOS 10.15, Ubuntu 18.04 and Ubuntu 19.

Status: RESOLVED → VERIFIED
Flags: qe-verify+
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: