[Wayland] Implement WaylandSurface to render to screen on Linux
Categories
(Core :: Widget: Gtk, enhancement, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox135 | --- | fixed |
People
(Reporter: stransky, Assigned: stransky)
References
(Blocks 3 open bugs)
Details
Attachments
(18 files)
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review |
Implement WaylandSurface to provide unified way to render on screen on Linux. That will be used by Webrender/GL, SW rendering and Webrender compositor (native layers). Unified rendering ensures we use the same codepath and will fix bugs in Wayland native layers implementation.
Assignee | ||
Updated•2 months ago
|
Assignee | ||
Comment 1•2 months ago
|
||
- Change VSync modile logging name from WidgetVsync to WidgetVSync
- Add WidgetCompositor logging module
Updated•2 months ago
|
Assignee | ||
Comment 2•2 months ago
|
||
Assignee | ||
Comment 3•2 months ago
|
||
Assignee | ||
Comment 4•2 months ago
|
||
Assignee | ||
Comment 5•2 months ago
|
||
Allow to lock WaylandSurface and does wl_surface commit if requested on unlock.
Assignee | ||
Comment 6•2 months ago
|
||
Assignee | ||
Comment 7•2 months ago
|
||
Assignee | ||
Comment 8•2 months ago
|
||
Assignee | ||
Comment 9•2 months ago
|
||
Use persistent WaylandSurface frame callback to fire VSync events.
Assignee | ||
Comment 10•2 months ago
|
||
- Make nsWindow own WaylandSurface which makes sure we don't release it too early as is reffed
- Always get scale factor from parent nsWindow for popups, don't try to guess
- Simplify VSync management
- Use Verbose logging level for extra size/scale messages
Assignee | ||
Comment 11•2 months ago
|
||
Assignee | ||
Comment 12•2 months ago
|
||
We'll update WaylandNativeLayers for WaylandSurface in next patches.
Assignee | ||
Comment 13•2 months ago
|
||
- Replace MozContainerSurfaceLock with WaylandSurfaceLock
- Temporary disable GtkCompositorWidget::GetNativeLayerRoot()
Assignee | ||
Comment 14•2 months ago
|
||
- We may need to provide HDR info per monitor but for now it's enough to just enable it globally to get it working.
Assignee | ||
Comment 15•2 months ago
|
||
Assignee | ||
Comment 16•2 months ago
|
||
Assignee | ||
Comment 17•2 months ago
|
||
Comment 18•2 months ago
|
||
@ Martin: I'm following this with great interest, but unfortunately lack the bandwidth to do in-depth reviewing atm., sorry :/
Assignee | ||
Comment 19•2 months ago
|
||
(In reply to Robert Mader [:rmader] from comment #18)
@ Martin: I'm following this with great interest, but unfortunately lack the bandwidth to do in-depth reviewing atm., sorry :/
Not a problem, it can be adjusted any time later.
Assignee | ||
Comment 20•2 months ago
|
||
Comment 21•2 months ago
|
||
Comment 22•2 months ago
•
|
||
Backed out for causing Wayland related mochitest failures and bustage on WaylandSurface.cpp and Bug 1936214
Failure log 1 // Failure log 2 // Failure log 3 // Failure log 4 // Failure log 5
Assignee | ||
Comment 24•2 months ago
|
||
For the leak it looks like WaylandSurface is references by unreleased VSyncSource. Not sure why it's kept around.
Assignee | ||
Comment 25•2 months ago
|
||
(In reply to Martin Stránský [:stransky] (ni? me) from comment #24)
For the leak it looks like WaylandSurface is references by unreleased VSyncSource. Not sure why it's kept around.
Hm, looks like popups is the issue as VSync is cleared. Perhaps popup holds strong ref to parent which is not released.
Assignee | ||
Comment 26•2 months ago
|
||
Looks like the memleaks are caused by compositor bug when wl_buffer is not released. Updated. Let's see if Wayland try is clean this run:
Assignee | ||
Comment 27•2 months ago
|
||
Assignee | ||
Updated•2 months ago
|
Comment hidden (Intermittent Failures Robot) |
Comment 29•2 months ago
|
||
Comment 32•2 months ago
|
||
Assignee | ||
Comment 33•2 months ago
|
||
Assignee | ||
Comment 34•2 months ago
|
||
Comment 35•2 months ago
|
||
Comment 36•2 months ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/2e9080fd1c7c
https://hg.mozilla.org/mozilla-central/rev/3e0c8eec4b20
https://hg.mozilla.org/mozilla-central/rev/84186392210d
https://hg.mozilla.org/mozilla-central/rev/e87a5169f668
https://hg.mozilla.org/mozilla-central/rev/8cc721cc8bc5
https://hg.mozilla.org/mozilla-central/rev/b72ae2651fad
https://hg.mozilla.org/mozilla-central/rev/395f7e887b81
https://hg.mozilla.org/mozilla-central/rev/4e2fe326671e
https://hg.mozilla.org/mozilla-central/rev/1c53bbe84cda
https://hg.mozilla.org/mozilla-central/rev/4e75ec1344b9
https://hg.mozilla.org/mozilla-central/rev/c3b9163075af
https://hg.mozilla.org/mozilla-central/rev/18df8a1298f6
https://hg.mozilla.org/mozilla-central/rev/4a1a1cbab703
https://hg.mozilla.org/mozilla-central/rev/dd6f161a2dd0
https://hg.mozilla.org/mozilla-central/rev/5e231ba0d046
https://hg.mozilla.org/mozilla-central/rev/f9a6fb8bae13
https://hg.mozilla.org/mozilla-central/rev/58a807c8fde7
https://hg.mozilla.org/mozilla-central/rev/8af28b4f8ccb
Description
•