Selected tab is scrolled into view when a window-modal dialog shows in the browser
Categories
(Firefox :: Tabbed Browser, defect)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox-esr78 | --- | unaffected |
| firefox85 | --- | unaffected |
| firefox86 | --- | unaffected |
| firefox87 | --- | verified |
People
(Reporter: Gijs, Assigned: emilio)
References
(Regression)
Details
(Keywords: regression)
Attachments
(3 files)
When a window-modal dialog like the multi-tab quit warning shows up, we scroll the selected tab into view. This is a bit disconcerting. The tabstrip shouldn't be impacted by the dialog showing up.
| Reporter | ||
Comment 1•5 years ago
|
||
This is triggered because an overflow event fires, so we hit this code. This is fairly easy to see in the browser debugger by adding a breakpoint to ensureElementIsVisible in the arrow scrollbox custom element. I don't understand why this event fires - the tabstrip isn't changing so there shouldn't be an event. Emilio, any idea what's going on there?
We could potentially avoid re-running the code there if the overflow attribute is already set on the scrollbox, but I don't know what that would break...
| Assignee | ||
Comment 2•5 years ago
|
||
| Assignee | ||
Comment 3•5 years ago
|
||
So basically showing the dialog is causing the whole frame tree to blow up (nsCSSFrameConstructor::ConstructDocElementFrame), so we lose the overflow state which lives there.
| Assignee | ||
Comment 4•5 years ago
|
||
Ah, there we go, changing -moz-user-input reconstructs the frames, wat: https://searchfox.org/mozilla-central/rev/5120ec68572d946bd15101cf2ee2eaf4a210724f/layout/style/nsStyleStruct.cpp#3092
| Assignee | ||
Comment 5•5 years ago
•
|
||
Well, that line goes back to bug 78695, but we don't use mUserInput to determine stuff when we construct frames, so I think we should just remove it.
| Assignee | ||
Comment 6•5 years ago
|
||
We don't use it for anything resembling frame construction, so this
should be safe.
This goes back to bug 78695.
Updated•5 years ago
|
Comment 8•5 years ago
|
||
| bugherder | ||
Updated•5 years ago
|
Comment 9•5 years ago
|
||
Set release status flags based on info from the regressing bug 1685313
Updated•5 years ago
|
Description
•