diff --git a/sway/input/text_input.c b/sway/input/text_input.c index 2c32cdd5f..a2ab21db4 100644 --- a/sway/input/text_input.c +++ b/sway/input/text_input.c @@ -109,6 +109,7 @@ static void handle_im_destroy(struct wl_listener *listener, void *data) { input_method_destroy); struct wlr_input_method_v2 *context = data; assert(context == relay->input_method); + wl_list_remove(&relay->input_method_new_popup_surface.link); relay->input_method = NULL; struct sway_text_input *text_input = relay_get_focused_text_input(relay); if (text_input) {