Closed Bug 1938240 Opened 2 months ago Closed 2 months ago

[Wayland] Make VSync more reliable

Categories

(Core :: Widget: Gtk, defect, P3)

defect

Tracking

()

RESOLVED FIXED
135 Branch
Tracking Status
firefox135 --- fixed

People

(Reporter: stransky, Assigned: stransky)

References

(Blocks 1 open bug)

Details

Attachments

(3 files)

Right now we fire VSync event after fist paint which may lead to transparent / empty window if rendering depends on VSync.
Use emulated frame callback to fire Vsync events in gap after 'ready to draw' surface state and first buffer attached as Wayland sends frame callback to surfaces with buffer only.

Assignee: nobody → stransky
Status: NEW → ASSIGNED
  • Add extra state which indicates attached buffer
  • Ensure emulated callbacks are only fired between ready to draw state and first buffer attached
  • Remove support of emulated one-time frame callbacks as they're not used
Pushed by stransky@redhat.com: https://hg.mozilla.org/integration/autoland/rev/99a5d038a292 [Wayland] Call WaylandVsyncSource::Init() explicitly as we should not ref/unref class in constructor r=emilio https://hg.mozilla.org/integration/autoland/rev/9dd4c1951839 [Wayland] Make WaylandVsyncSource to use emulated frame callbacks r=emilio https://hg.mozilla.org/integration/autoland/rev/fb657f0e3fbe [Wayland] Remove widget.wayland.emulate-frame-callback r=emilio
Status: ASSIGNED → RESOLVED
Closed: 2 months ago
Resolution: --- → FIXED
Target Milestone: --- → 135 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: