aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sway/input/text_input.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sway/input/text_input.c b/sway/input/text_input.c
index ad760a6f..5e96c3a8 100644
--- a/sway/input/text_input.c
+++ b/sway/input/text_input.c
@@ -109,6 +109,9 @@ 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_commit.link);
+ wl_list_remove(&relay->input_method_grab_keyboard.link);
+ wl_list_remove(&relay->input_method_destroy.link);
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);