Starting vertical tab drag right before expand on hover leaves tabs looking unexpanded
Categories
(Firefox :: Sidebar, defect, P1)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox-esr128 | --- | unaffected |
| firefox-esr140 | --- | unaffected |
| firefox140 | --- | unaffected |
| firefox141 | --- | unaffected |
| firefox142 | --- | wontfix |
| firefox143 | --- | wontfix |
| firefox144 | --- | verified |
| firefox145 | --- | verified |
People
(Reporter: sthompson, Assigned: jsudiaman)
References
(Blocks 1 open bug, Regression)
Details
(Keywords: regression, Whiteboard: [fidefe-sidebar])
Attachments
(2 files)
Found in
- Nightly 142.0a1 (2025-06-24) (aarch64)
Affected platforms
- All
Steps to reproduce
- Pin some tabs.
- Enable the Vertical Sidebar.
- Enable the Expand sidebar on hover option.
- Select multiple unpinned tabs
- Move the mouse cursor outside of the tab strip so that the sidebar collapses
- Very quickly move the mouse cursor over one of the multi-selected tabs, left click, and start dragging
Expected result
- The vertical tab strip should automatically expand and the tabs in the tab strip (both the non-moving tabs and the moving tabs) should be expanded to take up the full width of the tab strip
Actual result
- The vertical tab strip automatically expands but the tabs in the tab strip (both the non-moving tabs and the moving tabs) keep their unexpanded width, leaving a lot of empty space in the tab strip
Regression range
This issue comes with the new Drag and Drop into the pinned section feature.
Updated•8 months ago
|
| Reporter | ||
Comment 1•8 months ago
|
||
You do need to move quickly to get into this state, so I don't think the severity is super high.
It looks to me like this manifests only when the dragstart event gets handled by <tabs> before the sidebar has a chance to change to the expanded state.
I suspect the issue is caused by all tabs getting their max-width fixed https://searchfox.org/mozilla-central/rev/ec8a326713f60dec138a3e3383b03ac739870fc7/browser/components/tabbrowser/content/tabs.js#2196 Thinking about it, maybe this only needs to be applied to tabs in the horizontal tab strip? That may be sufficient to fix this issue without causing any regressions or issues for horizontal.
If there is a reason to keep tab strip items' widths capped during vertical tab strip drags, then the <tabs> element may need to be aware of tab strip width changes and update the max-width of non-moving tabs and both the width and max-width for moving tabs.
Comment 2•8 months ago
|
||
Set release status flags based on info from the regressing bug 1944907
:nsharpley, since you are the author of the regressor, bug 1944907, could you take a look? Also, could you set the severity field?
For more information, please visit BugBot documentation.
| Reporter | ||
Updated•8 months ago
|
Updated•8 months ago
|
Updated•8 months ago
|
Comment 3•8 months ago
|
||
Will that bug be fixed in time for a 141 uplift or are we targeting a later release? Thanks
Updated•8 months ago
|
Comment 4•8 months ago
|
||
(In reply to Pascal Chevrel:pascalc from comment #3)
Will that bug be fixed in time for a 141 uplift or are we targeting a later release? Thanks
We're likely targeting 142.
Updated•8 months ago
|
| Assignee | ||
Comment 5•8 months ago
|
||
This appears to be a race condition between MozTabbrowserTabs.#updateTabStylesOnDrag, and SidebarController.onMouseEnter().
With logpoints on these functions, when the issue reproduces, the log is as follows:
onMouseEnter was called, waiting for task to complete.
movingTab width now becomes 49.633331298828125px
onMouseEnter task is complete.
vs. when the issue does not reproduce, the log is:
onMouseEnter was called, waiting for task to complete.
onMouseEnter task is complete.
movingTab width now becomes 242.11666870117188px
So, I believe this is caused by obtaining the bounding client rect during the delay between mouse enter and sidebar animation, therefore causing rect to have outdated data by the time we set movingTab.style.width.
| Assignee | ||
Comment 6•8 months ago
|
||
The shorter delay doesn't seem noticeable, and with it in place, I was no longer able to reproduce the issue.
Updated•8 months ago
|
Updated•7 months ago
|
Updated•7 months ago
|
Updated•6 months ago
|
Comment 8•6 months ago
|
||
| bugherder | ||
Comment 9•6 months ago
|
||
The patch landed in nightly and beta is affected.
:jsudiaman, is this bug important enough to require an uplift?
- If yes, please nominate the patch for beta approval.
- See https://wiki.mozilla.org/Release_Management/Requesting_an_Uplift for documentation on how to request an uplift.
- If no, please set
status-firefox143towontfix.
For more information, please visit BugBot documentation.
| Assignee | ||
Comment 10•6 months ago
|
||
Bug is fairly hard to reproduce and easy to work around.
Updated•6 months ago
|
Updated•6 months ago
|
Comment 11•6 months ago
|
||
Reproduced with Firefox 142.0a1 (2025-06-25) on macOS 15.
Verified as fixed with Firefox 145.0a1 (20250917161633) and Firefox 144.0b2 (20250917090643) on macOS 14, Windows 10 and Ubuntu 22.
Description
•