From cb947c15e3d9c0da44a99d81a1673119f2bf10c9 Mon Sep 17 00:00:00 2001 From: Squibid Date: Sun, 26 Oct 2025 22:09:01 -0400 Subject: [PATCH] remove all keyboard listeners on destroy --- src/keyboard.zig | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/keyboard.zig b/src/keyboard.zig index 96d070c..984f96d 100644 --- a/src/keyboard.zig +++ b/src/keyboard.zig @@ -17,8 +17,6 @@ wlr_keyboard: *wlr.Keyboard, context: *xkb.Context, device: *wlr.InputDevice, -link: wl.list.Link = undefined, - // Keyboard listeners key: wl.Listener(*wlr.Keyboard.event.Key) = .init(handleKey), key_map: wl.Listener(*wlr.Keyboard) = .init(handleKeyMap), @@ -106,10 +104,9 @@ pub fn handleDestroy(listener: *wl.Listener(*wlr.InputDevice), _: *wlr.InputDevi std.log.debug("removing keyboard: {s}", .{keyboard.device.name orelse "(null)"}); - keyboard.link.remove(); - keyboard.modifiers.link.remove(); keyboard.key.link.remove(); + keyboard.key_map.link.remove(); keyboard.destroy.link.remove(); gpa.destroy(keyboard);