diff options
author | Benjamin Otte <otte@redhat.com> | 2019-01-08 00:22:14 +0100 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2019-01-08 00:41:12 +0100 |
commit | ca76675a6948ea113e15d7b455f2de2cd69ab26b (patch) | |
tree | a9a38d6356048a39885a8b6641905b9f7ae6fcb2 /gtk/gtkimmulticontext.c | |
parent | 16d4ce4d0301b7af2a67703e792efdcf27b1d397 (diff) | |
download | gtk+-ca76675a6948ea113e15d7b455f2de2cd69ab26b.tar.gz |
immodule: Pass a GdkDisplay for default context ID
After all, the context depends on the display - we want to use the
wayland context for Wayland, xim for X11 and so on.
Diffstat (limited to 'gtk/gtkimmulticontext.c')
-rw-r--r-- | gtk/gtkimmulticontext.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gtk/gtkimmulticontext.c b/gtk/gtkimmulticontext.c index aae9b6d0ae..e075adfbc3 100644 --- a/gtk/gtkimmulticontext.c +++ b/gtk/gtkimmulticontext.c @@ -244,11 +244,17 @@ static const gchar * get_effective_context_id (GtkIMMulticontext *multicontext) { GtkIMMulticontextPrivate *priv = multicontext->priv; + GdkDisplay *display; if (priv->context_id_aux) return priv->context_id_aux; - return _gtk_im_module_get_default_context_id (); + if (priv->client_widget) + display = gtk_widget_get_display (priv->client_widget); + else + display = gdk_display_get_default (); + + return _gtk_im_module_get_default_context_id (display); } static GtkIMContext * |