Stop using nsView for popups.
Categories
(Core :: Layout, task)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox146 | --- | fixed |
People
(Reporter: emilio, Assigned: emilio)
References
(Blocks 2 open bugs)
Details
(Keywords: perf-alert)
Attachments
(1 file, 5 obsolete files)
| Assignee | ||
Comment 1•1 year ago
|
||
| Assignee | ||
Comment 2•1 year ago
|
||
Comment on attachment 9439692 [details]
Bug 1933181 - Stop using nsView for popups. r=#layout
WDYT about something like this? This seems to work great (only tested on Linux tho), and would be the first step to get rid of views.
Comment 3•1 year ago
|
||
Had a quick look through, so far nothing stands out as a hard blocker. I want to think a bit more on this though.
| Assignee | ||
Comment 4•1 year ago
|
||
(In reply to Timothy Nikkel (:tnikkel) from comment #3)
Had a quick look through, so far nothing stands out as a hard blocker. I want to think a bit more on this though.
Yeah didn't mean to make it a proper review request, mostly a quick "am I too off" thing. I need to fix handling of <browser>s inside popups or so, for example which might make me kill the nsSubDocumentFrame outer view as well perhaps, or do something else. Once I figure that out I'll send it for review proper.
| Assignee | ||
Comment 5•11 months ago
|
||
Main issue being that the browsing context tree is mutated before
display lists are created, so this triggers RDL asserts.
Works other than that tho.
| Assignee | ||
Updated•1 month ago
|
| Assignee | ||
Comment 6•1 month ago
|
||
No behavior change.
| Assignee | ||
Comment 7•1 month ago
|
||
And use it instead of manually using views.
| Assignee | ||
Comment 8•1 month ago
|
||
The code already doesn't jump across toplevel boundaries so this is
simpler.
| Assignee | ||
Comment 9•1 month ago
|
||
The idea is that by passing (frame, renderer) we'll accommodate popups
not having views (and eventually kill views directly).
Comment 10•1 month ago
|
||
Comment on attachment 9519342 [details]
Bug 1933181 - Minor simplification to XULPopupElement::GetOuterScreenRect. r=#layout
Revision D268205 was moved to bug 1993570. Setting attachment 9519342 [details] to obsolete.
Comment 11•1 month ago
|
||
Comment on attachment 9519343 [details]
Bug 1933181 - Introduce nsIWidget::Get{,Popup}Frame. r=stransky,#layout
Revision D268206 was moved to bug 1993570. Setting attachment 9519343 [details] to obsolete.
Comment 12•1 month ago
|
||
Comment on attachment 9519344 [details]
Bug 1933181 - Simplify nsWindow::GetTopmostWindow(). r=stransky
Revision D268207 was moved to bug 1993570. Setting attachment 9519344 [details] to obsolete.
Comment 13•1 month ago
|
||
Comment on attachment 9519348 [details]
Bug 1933181 - Make painting code not use views directly. r=#layout
Revision D268208 was moved to bug 1993570. Setting attachment 9519348 [details] to obsolete.
Updated•1 month ago
|
Updated•1 month ago
|
Comment 14•1 month ago
|
||
Comment 15•1 month ago
|
||
Comment 16•1 month ago
|
||
Comment 17•1 month ago
|
||
Comment 18•1 month ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/832b10027e3b
https://hg.mozilla.org/mozilla-central/rev/78a64826662b
Updated•1 month ago
|
Comment 19•1 month ago
|
||
| bugherder | ||
Updated•1 month ago
|
Comment 20•1 month ago
|
||
Comment on attachment 9443435 [details]
WIP: Bug 1933181 - Don't use views for subdocs.
Revision D232057 was moved to bug 1994942. Setting attachment 9443435 [details] to obsolete.
Updated•1 month ago
|
Comment 21•1 month ago
|
||
(In reply to Pulsebot from comment #14)
Pushed by ealvarez@mozilla.com:
https://github.com/mozilla-firefox/firefox/commit/93b4c09f7e85
https://hg.mozilla.org/integration/autoland/rev/832b10027e3b
Stop using nsView for popups. r=layout-reviewers,tnikkel
Perfherder has detected a devtools performance change from push 832b10027e3b1c44f0a22891903f657bf2a97064.
If you have any questions, please reach out to a performance sheriff. Alternatively, you can find help on Slack by joining #perf-help, and on Matrix you can find help by joining #perftest.
Improvements:
| Ratio | Test | Platform | Options | Absolute values (old vs new) |
|---|---|---|---|---|
| 19% | damp console.typing | linux1804-64-shippable-qr | e10s fission stylo webrender | 527.48 -> 426.70 |
| 12% | damp console.autocomplete | linux1804-64-shippable-qr | e10s fission stylo webrender | 665.67 -> 587.60 |
| 8% | damp console.autocomplete | windows11-64-24h2-shippable | e10s fission stylo webrender | 395.45 -> 362.34 |
Details of the alert can be found in the alert summary, including links to graphs and comparisons for each of the affected tests.
If you need the profiling jobs you can trigger them yourself from treeherder job view or ask a performance sheriff to do that for you.
You can run all of these tests on try with ./mach try perf --alert 47169
The following documentation link provides more information about this command.
Updated•13 days ago
|
Description
•