diff --git a/gtk/gtkimmodule.c b/gtk/gtkimmodule.c index 0c99553423..bdf956dd63 100644 --- a/gtk/gtkimmodule.c +++ b/gtk/gtkimmodule.c @@ -119,7 +119,13 @@ match_backend (const char *context_id) { #ifdef GDK_WINDOWING_WAYLAND if (g_strcmp0 (context_id, "wayland") == 0) - return GDK_IS_WAYLAND_DISPLAY (gdk_display_get_default ()); + { + GdkDisplay *display = gdk_display_get_default (); + + return GDK_IS_WAYLAND_DISPLAY (display) && + gdk_wayland_display_query_registry (display, + "gtk_text_input_manager"); + } #endif #ifdef GDK_WINDOWING_BROADWAY