diff --git a/modules/input/imwayland.c b/modules/input/imwayland.c index 12d18a0f64..87c4ae806f 100644 --- a/modules/input/imwayland.c +++ b/modules/input/imwayland.c @@ -113,6 +113,8 @@ static const GtkIMContextInfo *info_list[] = &imwayland_info, }; +static void gtk_im_context_wayland_focus_out (GtkIMContext *context); + #define GTK_IM_CONTEXT_WAYLAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), type_wayland, GtkIMContextWayland)) #ifndef INCLUDE_IM_wayland @@ -469,6 +471,8 @@ gtk_im_context_wayland_finalize (GObject *object) { GtkIMContextWayland *context = GTK_IM_CONTEXT_WAYLAND (object); + gtk_im_context_wayland_focus_out (GTK_IM_CONTEXT (context)); + g_clear_object (&context->window); g_clear_object (&context->gesture); g_free (context->surrounding.text);