ladybird/Services
Aliaksandr Kalenik a08734ecbc LibGfx+LibWeb+Compositor+WebContent: Commit 2D canvas flushes atomically
2D canvas contexts started publishing partial frames after canvas
rasterization moved into the Compositor. WebContent still splits large
recorded command lists after 64 commands, but every split batch was sent
through the same compositor path as the end-of-frame flush. The
compositor replayed each batch into the DrawCanvas source surface,
so a pending present could sample a canvas after clear and before the
rest of the next frame had been drawn. Canvas-heavy pages such as
slither.com then flickered between partial and complete frames.

Carry an explicit commit bit with 2D canvas command updates. Non-commit
batches now update a hidden working canvas in the Compositor, while the
display-list-visible surface keeps the last committed canvas contents.
The end-of-frame canvas preparation sends the commit boundary, including
the empty-commit case needed when the auto-flush consumed all recorded
commands before prepare_for_compositing() runs.
2026-06-19 00:01:26 +02:00
..
Compositor LibGfx+LibWeb+Compositor+WebContent: Commit 2D canvas flushes atomically 2026-06-19 00:01:26 +02:00
ImageDecoder LibWebView: Make helper sandboxing opt-out 2026-06-16 19:02:54 +02:00
RequestServer LibWebView: Make helper sandboxing opt-out 2026-06-16 19:02:54 +02:00
WebContent LibGfx+LibWeb+Compositor+WebContent: Commit 2D canvas flushes atomically 2026-06-19 00:01:26 +02:00
WebDriver LibWebView: Make helper sandboxing opt-out 2026-06-16 19:02:54 +02:00
WebWorker LibWeb+WebContent+WebWorker: Drop display list player type selection 2026-06-18 10:25:44 +02:00
CMakeLists.txt Compositor+LibWebView+WebContent: Scaffold opt-in Compositor process 2026-05-22 19:50:42 +01:00
RendererSandbox.h WebContent: Sandbox renderer processes on Linux 2026-06-09 19:35:09 +02:00
RendererSandboxLinux.cpp Services: Deny GPU operations in WebContent 2026-06-18 10:25:44 +02:00
RendererSandboxMacOS.cpp LibSandbox: Add macOS service sandboxing 2026-06-10 21:16:41 +02:00
RendererSandboxUnimplemented.cpp WebContent: Sandbox renderer processes on Linux 2026-06-09 19:35:09 +02:00