From 94cf26d3b707cda46b0376645c6ccd27ec537416 Mon Sep 17 00:00:00 2001 From: Alex Maese Date: Sat, 12 Aug 2023 11:50:03 -0500 Subject: [PATCH] Inhibit floating modifier for tablet tool tip --- sway/input/seatop_default.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sway/input/seatop_default.c b/sway/input/seatop_default.c index 7fd00d718..d407b48f0 100644 --- a/sway/input/seatop_default.c +++ b/sway/input/seatop_default.c @@ -247,8 +247,12 @@ static void handle_tablet_tool_tip(struct sway_seat *seat, bool is_floating_or_child = container_is_floating_or_child(cont); bool is_fullscreen_or_child = container_is_fullscreen_or_child(cont); struct wlr_keyboard *keyboard = wlr_seat_get_keyboard(seat->wlr_seat); + struct sway_keyboard_shortcuts_inhibitor *sway_inhibitor = + keyboard_shortcuts_inhibitor_get_for_focused_surface(seat); + bool shortcuts_inhibited = sway_inhibitor && sway_inhibitor->inhibitor->active; bool mod_pressed = keyboard && - (wlr_keyboard_get_modifiers(keyboard) & config->floating_mod); + (wlr_keyboard_get_modifiers(keyboard) & config->floating_mod) + && (!shortcuts_inhibited || config->floating_mod_inhibited); // Handle beginning floating move if (is_floating_or_child && !is_fullscreen_or_child && mod_pressed) {