virtualx-engine/platform/linuxbsd/wayland
Riteo f27471fbd8 Wayland: minimize surface commits and limit them to the main thread
Before of this patch, as explained in the usual
commented-wall-of-text-longer-than-the-actual-patch-itself™, due to the
multithreaded nature of the Wayland thread, it was possible to commit a
surface while the renderer was doing stuff, which was _very_ wrong.

Initially the consequences of such a sin weren't obvious but, now that
explicit synchronization is becoming more and more common, we can't
commit a buffer randomly without basically guaranteeing a nasty, nasty
crash (and we should have avoided commits altogether in the first place
to ensure atomic surface updates).

We now only trigger a commit _in the main thread_ when low processor usage
mode is on _and_ if we know that we won't be rendering anything as, due to
its intermittent nature, it makes "legacy" (pre xdg_wm_base v6) frame
callback based suspension quite annoying.
2024-06-28 01:47:25 +02:00
..
dynwrappers
detect_prime_egl.cpp EGL: Use EGL_EXT_platform_base whenever possible 2024-06-04 08:43:34 +02:00
detect_prime_egl.h EGL: Use EGL_EXT_platform_base whenever possible 2024-06-04 08:43:34 +02:00
display_server_wayland.cpp Wayland: minimize surface commits and limit them to the main thread 2024-06-28 01:47:25 +02:00
display_server_wayland.h Wayland: minimize surface commits and limit them to the main thread 2024-06-28 01:47:25 +02:00
egl_manager_wayland.cpp
egl_manager_wayland.h
egl_manager_wayland_gles.cpp Wayland: Add support for OpenGL ES driver 2024-05-03 05:17:13 +02:00
egl_manager_wayland_gles.h Wayland: Add support for OpenGL ES driver 2024-05-03 05:17:13 +02:00
key_mapping_xkb.cpp
key_mapping_xkb.h
rendering_context_driver_vulkan_wayland.cpp Finish splitting functionality of the Vulkan and D3D12 backends into RenderingDeviceDriver. 2024-02-12 10:02:18 -03:00
rendering_context_driver_vulkan_wayland.h Finish splitting functionality of the Vulkan and D3D12 backends into RenderingDeviceDriver. 2024-02-12 10:02:18 -03:00
SCsub [Wayland] Implement IME support. 2024-06-11 12:24:54 +03:00
wayland_thread.cpp Wayland: minimize surface commits and limit them to the main thread 2024-06-28 01:47:25 +02:00
wayland_thread.h Wayland: minimize surface commits and limit them to the main thread 2024-06-28 01:47:25 +02:00