aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZakariyya Von Forslun <zakariyyavf@protonmail.com>2022-05-30 01:01:49 +1000
committerIsaac Freund <mail@isaacfreund.com>2022-05-29 17:21:15 +0200
commite72afab140cc8540931c7e484aa54257507df329 (patch)
tree46ba47a33cf734e7c1e3075929129b39fdb34359
parent960afa89ec41315640afd4dc2d9d84835923c44d (diff)
downloadriver-e72afab140cc8540931c7e484aa54257507df329.tar.gz
river-e72afab140cc8540931c7e484aa54257507df329.tar.xz
Xwayland: add handling of override redirect listeners
Adding the set_override_redirect listener on creation and removing it on destruction was missed when implementing override redirect state change handling.
-rw-r--r--river/XwaylandUnmanaged.zig2
-rw-r--r--river/XwaylandView.zig2
2 files changed, 4 insertions, 0 deletions
diff --git a/river/XwaylandUnmanaged.zig b/river/XwaylandUnmanaged.zig
index f490779..e1b1d3a 100644
--- a/river/XwaylandUnmanaged.zig
+++ b/river/XwaylandUnmanaged.zig
@@ -60,6 +60,7 @@ pub fn create(xwayland_surface: *wlr.XwaylandSurface) error{OutOfMemory}!*Self {
xwayland_surface.events.destroy.add(&self.destroy);
xwayland_surface.events.map.add(&self.map);
xwayland_surface.events.unmap.add(&self.unmap);
+ xwayland_surface.events.set_override_redirect.add(&self.set_override_redirect);
return self;
}
@@ -80,6 +81,7 @@ fn handleDestroy(listener: *wl.Listener(*wlr.XwaylandSurface), _: *wlr.XwaylandS
self.destroy.link.remove();
self.map.link.remove();
self.unmap.link.remove();
+ self.set_override_redirect.link.remove();
// Deallocate the node
const node = @fieldParentPtr(std.TailQueue(Self).Node, "data", self);
diff --git a/river/XwaylandView.zig b/river/XwaylandView.zig
index b7434c8..ac28f79 100644
--- a/river/XwaylandView.zig
+++ b/river/XwaylandView.zig
@@ -83,6 +83,7 @@ pub fn create(output: *Output, xwayland_surface: *wlr.XwaylandSurface) error{Out
xwayland_surface.events.map.add(&self.map);
xwayland_surface.events.unmap.add(&self.unmap);
xwayland_surface.events.request_configure.add(&self.request_configure);
+ xwayland_surface.events.set_override_redirect.add(&self.set_override_redirect);
return self;
}
@@ -188,6 +189,7 @@ fn handleDestroy(listener: *wl.Listener(*wlr.XwaylandSurface), _: *wlr.XwaylandS
self.map.link.remove();
self.unmap.link.remove();
self.request_configure.link.remove();
+ self.set_override_redirect.link.remove();
self.view.destroy();
}