From b0e8f4ade2e6e7831671faa05bdfd2cac0059adf Mon Sep 17 00:00:00 2001 From: Tadeo Kondrak Date: Tue, 26 Jan 2021 13:48:42 -0700 Subject: text_input: Ignore text_input disable from unfocused windows Before this commit, there would be cases where focus changes from one window to another, the new window activates text_input, then the old window sends a deactivate request, making text_input unfocused completely. --- sway/input/text_input.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'sway') diff --git a/sway/input/text_input.c b/sway/input/text_input.c index f83726ee..70659712 100644 --- a/sway/input/text_input.c +++ b/sway/input/text_input.c @@ -144,6 +144,10 @@ static void handle_text_input_disable(struct wl_listener *listener, void *data) { struct sway_text_input *text_input = wl_container_of(listener, text_input, text_input_disable); + if (text_input->input->focused_surface == NULL) { + sway_log(SWAY_DEBUG, "Disabling text input, but no longer focused"); + return; + } relay_disable_text_input(text_input->relay, text_input); } -- cgit v1.2.3