wayland/protocol
Vlad Zahorodnii 268e8373ae Add wl_fixes.ack_global_remove()
The wl_global_remove() function was introduce to help mitigate clients
getting unintentionally disconnected if a global is added and removed in
a short burst.

The intended usage was:

 - the compositor calls wl_global_remove()
 - after a certain period of time, the compositor calls
   wl_global_destroy()

Unfortunately, it did not fully fix the issue due to the way monotonic
clock works on Linux. Specifically, it can tick even during sleep.

This change adds a slightly better way to handle global removal. With
the proposed changes, the clients need to signal to the compositor that
they won't bind the global anymore.

After all clients have acknowledged a wl_registry.global_remove, the
compositor can finally destroy the global.

Signed-off-by: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
2026-03-18 10:56:44 +02:00
..
.gitignore Update .gitignore for protocol/ 2013-11-19 13:26:04 -08:00
generate-shm-formats.py Add an automated script to update wl_shm.format 2019-09-06 12:09:22 +00:00
tests.xml Replace initial 8 spaces with a tab for all xml files 2020-04-29 12:21:33 +00:00
wayland.dtd doc: add frozen=true interface attribute 2026-03-05 12:00:35 +00:00
wayland.xml Add wl_fixes.ack_global_remove() 2026-03-18 10:56:44 +02:00