diff --git a/src/Output.zig b/src/Output.zig index 14b16b3..56498b2 100644 --- a/src/Output.zig +++ b/src/Output.zig @@ -41,6 +41,8 @@ destroy: wl.Listener(*wlr.Output) = .init(handleDestroy), pub fn init(wlr_output: *wlr.Output) ?*Output { errdefer Utils.oomPanic(); + server.events.exec("OutputInitPre", .{}); + const self = try gpa.create(Output); self.* = .{ @@ -88,10 +90,14 @@ pub fn init(wlr_output: *wlr.Output) ?*Output { wlr_output.data = self; + server.events.exec("OutputInitPost", .{self.id}); + return self; } pub fn deinit(self: *Output) void { + server.events.exec("OutputDeinitPre", .{self.id}); + self.frame.link.remove(); self.request_state.link.remove(); self.destroy.link.remove(); @@ -100,6 +106,8 @@ pub fn deinit(self: *Output) void { self.wlr_output.destroy(); + server.events.exec("OutputDeinitPost", .{}); + gpa.destroy(self); }