diff options
| author | Zakariyya Von Forslun <zakariyyavf@protonmail.com> | 2022-05-30 01:01:49 +1000 |
|---|---|---|
| committer | Isaac Freund <mail@isaacfreund.com> | 2022-05-29 17:21:15 +0200 |
| commit | e72afab140cc8540931c7e484aa54257507df329 (patch) | |
| tree | 46ba47a33cf734e7c1e3075929129b39fdb34359 | |
| parent | 960afa89ec41315640afd4dc2d9d84835923c44d (diff) | |
| download | river-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.zig | 2 | ||||
| -rw-r--r-- | river/XwaylandView.zig | 2 |
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(); } |
