aboutsummaryrefslogtreecommitdiff
path: root/src/input_manager.zig
diff options
context:
space:
mode:
authorIsaac Freund <ifreund@ifreund.xyz>2020-04-18 12:21:43 +0200
committerIsaac Freund <ifreund@ifreund.xyz>2020-04-18 12:21:43 +0200
commitcd19a4615b822ab85ebe1430ec956f6b22f3d008 (patch)
treec3b9cd94870ecb8e37c5ca9d29cd1077c7820bef /src/input_manager.zig
parented7aca261bc51790334a0adc9e00df5eda6dbc83 (diff)
downloadriver-cd19a4615b822ab85ebe1430ec956f6b22f3d008.tar.gz
river-cd19a4615b822ab85ebe1430ec956f6b22f3d008.tar.xz
Properly clean up resources on exit
Diffstat (limited to 'src/input_manager.zig')
-rw-r--r--src/input_manager.zig7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/input_manager.zig b/src/input_manager.zig
index 6f4d7ae..d2c11db 100644
--- a/src/input_manager.zig
+++ b/src/input_manager.zig
@@ -32,6 +32,13 @@ pub const InputManager = struct {
c.wl_signal_add(&self.server.wlr_backend.events.new_input, &self.listen_new_input);
}
+ pub fn deinit(self: *Self) void {
+ while (self.seats.pop()) |seat_node| {
+ seat_node.data.deinit();
+ self.server.allocator.destroy(seat_node);
+ }
+ }
+
/// Must be called whenever a view is unmapped.
pub fn handleViewUnmap(self: Self, view: *View) void {
var it = self.seats.first;