From a0c30de132a71bb90b2e90607a1fe0a78fd44322 Mon Sep 17 00:00:00 2001 From: Isaac Freund Date: Sun, 19 Apr 2020 14:21:51 +0200 Subject: Clear focus if focused layer surface is unmapped --- src/input_manager.zig | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/input_manager.zig') diff --git a/src/input_manager.zig b/src/input_manager.zig index 8cb0aa6..12f4171 100644 --- a/src/input_manager.zig +++ b/src/input_manager.zig @@ -1,6 +1,7 @@ const std = @import("std"); const c = @import("c.zig"); +const Log = @import("log.zig").Log; const Seat = @import("seat.zig").Seat; const Server = @import("server.zig").Server; @@ -83,6 +84,8 @@ pub const InputManager = struct { fn handleInhibitActivate(listener: ?*c.wl_listener, data: ?*c_void) callconv(.C) void { const self = @fieldParentPtr(Self, "listen_inhibit_activate", listener.?); + Log.Debug.log("Input inhibitor activated", .{}); + // Clear focus of all seats var seat_it = self.seats.first; while (seat_it) |seat_node| : (seat_it = seat_node.next) { @@ -95,6 +98,8 @@ pub const InputManager = struct { fn handleInhibitDeactivate(listener: ?*c.wl_listener, data: ?*c_void) callconv(.C) void { const self = @fieldParentPtr(Self, "listen_inhibit_deactivate", listener.?); + Log.Debug.log("Input inhibitor deactivated", .{}); + self.exclusive_client = null; // Calling arrangeLayers() like this ensures that any top or overlay, -- cgit v1.2.3