From 859ffbb822196197c67f66c26363dbcc58b5969f Mon Sep 17 00:00:00 2001 From: Johan Malm Date: Wed, 18 Feb 2026 21:28:56 +0000 Subject: [PATCH] layer: move the "locked" check to seat_force_focus_surface() --- src/layers.c | 4 +--- src/seat.c | 3 +++ 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/layers.c b/src/layers.c index c7c96700..cbca97e2 100644 --- a/src/layers.c +++ b/src/layers.c @@ -23,7 +23,6 @@ #include "labwc.h" #include "node.h" #include "output.h" -#include "session-lock.h" #define LAB_LAYERSHELL_VERSION 4 @@ -497,12 +496,11 @@ handle_popup_commit(struct wl_listener *listener, void *data) /* Force focus when popup was triggered by IPC */ struct server *server = popup->server; struct seat *seat = &server->seat; - bool locked = server->session_lock_manager->locked; if (seat->seat->keyboard_state.focused_surface == popup->wlr_popup->parent) { popup->parent_was_focused = true; } - if (!locked && popup->wlr_popup->seat) { + if (popup->wlr_popup->seat) { struct wlr_layer_surface_v1 *layer_surface = popup->lab_layer_surface->layer_surface; seat_force_focus_surface(seat, layer_surface->surface); diff --git a/src/seat.c b/src/seat.c index 58b96a36..c78979bf 100644 --- a/src/seat.c +++ b/src/seat.c @@ -759,6 +759,9 @@ seat_reconfigure(struct server *server) void seat_force_focus_surface(struct seat *seat, struct wlr_surface *surface) { + if (seat->server->session_lock_manager->locked) { + return; + } uint32_t *pressed_sent_keycodes = key_state_pressed_sent_keycodes(); int nr_pressed_sent_keycodes = key_state_nr_pressed_sent_keycodes(); struct wlr_keyboard *kb = &seat->keyboard_group->keyboard;