Dragging a tab through the toolbar has become janky when there are large numbers of tabs and at least one pinned tab (especially on Wayland)
Categories
(Firefox :: Theme, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr102 | --- | unaffected |
firefox106 | --- | unaffected |
firefox107 | --- | unaffected |
firefox108 | --- | fixed |
People
(Reporter: ke5trel, Assigned: emilio)
References
(Blocks 1 open bug, Regression)
Details
(Keywords: perf, regression)
Attachments
(2 files)
STR:
- Start with
MOZ_ENABLE_WAYLAND=1
on Ubuntu 22.04. - Open a session with 2000 tabs.
- Pin at least one tab.
- Drag a tab to different positions in the toolbar at various speeds.
The previously smooth tab dragging has become janky and gets progressively worse with increasing number of tabs. It is much more severe on Linux Wayland than XWayland/X11 and can make the entire browser unresponsive for some time.
It does not happen when there are no pinned tabs, except for when the dragged tab hits the far right end of the strip.
Performance profile flame graph shows a lot of time spent in nsFlexContainerFrame
layout reflow:
https://share.firefox.dev/3N1ApUk
Moving tabs with the keyboard shortcut (Ctrl+Shift+Page Up/Down) is unaffected.
Turning off tab animations with ui.prefersReducedMotion = 1
makes no difference.
Regression window:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=4ff88d45f59c4357dcc71ddf4ad5344a38f9944d&tochange=aa325161aae5e555cab4d44b6662bbe029d26a5d
Regressed by Bug 1790616.
Comment 1•2 years ago
|
||
:emilio, since you are the author of the regressor, bug 1790616, could you take a look? Also, could you set the severity field?
For more information, please visit auto_nag documentation.
Assignee | ||
Comment 2•2 years ago
|
||
Move the custom overflow code to UnionChildOverflow, so that it's
computed correctly from UpdateOverflow() when a transformed descendant
changes.
This can cause extra reflows in some cases. In the case of the tab bar
it was here:
The subsequent reflow ended up fixing up the overflow areas, so I don't
think it's a correctness issue otherwise.
It seems grid has the same issue, but it seems a bit harder to fix
because of subgrid and masonry, so I'll file a follow-up bug for that.
Updated•2 years ago
|
Assignee | ||
Updated•2 years ago
|
Comment 4•2 years ago
|
||
bugherder |
Description
•