038a3170bf
In future patches, we'll create additional CoglFramebuffers that will be shared via DMA-Buf with PipeWire. When recording frames, we'll blit the current onscreen framebuffer into the shared one. However, that presents a problem: cogl_framebuffer_blit() mimics glBlitFramebuffer() semantics, and doesn't do an implicit flush of the GPU command stream. As a consequence, clients may receive unblitted or incomplete framebuffers. We could use cogl_framebuffer_finish() to ensure the commands were submitted to the GPU, but it is too harsh -- it blocks the CPU completely until the commands are finished! Add cogl_framebuffer_flush(), which ensures the command stream is submitted to the GPU without blocking the CPU. Even though we don't use the framebuffer specifically, it may be useful in the future for e.g. a potential Vulkan backend to have access to the framebuffer. https://gitlab.gnome.org/GNOME/mutter/merge_requests/1086 |
||
---|---|---|
.. | ||
cogl | ||
cogl-pango | ||
cogl-path | ||
test-fixtures | ||
tests | ||
.gitignore | ||
cogl-config.h.meson | ||
cogl-mutter-config.h.in | ||
config-custom.h | ||
meson.build |