[plasma/kwayland/Plasma/6.7] src/client: Add support for wl_fixes.ack_global_remove

Vlad Zahorodnii <[email protected]>
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git commit b8fa7d1970a456147393a09eb4abd5c65c2719cc by Vlad Zahorodnii.
Committed on 22/07/2026 at 09:50.
Pushed by vladz into branch 'Plasma/6.7'.

Add support for wl_fixes.ack_global_remove


(cherry picked from commit 9115224d3ed5e78803e4c97900a8205d2b7af1ef)

Co-authored-by: Vlad Zahorodnii <[email protected]>

M  +7    -1    src/client/registry.cpp

https://invent.kde.org/plasma/kwayland/-/commit/b8fa7d1970a456147393a09eb4abd5c65c2719cc

diff --git a/src/client/registry.cpp b/src/client/registry.cpp
index e9638828..796c9182 100644
--- a/src/client/registry.cpp
+++ b/src/client/registry.cpp
@@ -496,7 +496,7 @@ void Registry::Private::handleAnnounce(uint32_t name, const char *interface, uin
 {
     Interface i = nameToInterface(interface);
     if (qstrcmp(interface, wl_fixes_interface.name) == 0) {
-        fixes.setup(reinterpret_cast<wl_fixes *>(wl_registry_bind(registry, name, &wl_fixes_interface, 1)));
+        fixes.setup(reinterpret_cast<wl_fixes *>(wl_registry_bind(registry, name, &wl_fixes_interface, std::min(version, 2u))));
         if (queue) {
             queue->addProxy(fixes);
         }
@@ -529,6 +529,12 @@ void Registry::Private::handleRemove(uint32_t name)
         }
     }
     Q_EMIT q->interfaceRemoved(name);
+
+#ifdef WL_FIXES_ACK_GLOBAL_REMOVE
+    if (fixes && wl_fixes_get_version(fixes) >= WL_FIXES_ACK_GLOBAL_REMOVE_SINCE_VERSION) {
+        wl_fixes_ack_global_remove(fixes, registry, name);
+    }
+#endif
 }
 
 bool Registry::Private::hasInterface(Registry::Interface interface) const
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.