diff options
author | Matthias Clasen <mclasen@redhat.com> | 2018-01-11 21:44:49 -0500 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2018-01-12 09:23:59 -0500 |
commit | d72508590b9b4bde91c0e1445ac61be62c3af2ff (patch) | |
tree | 6d7e05e35c2967ac8c056a1cb666b4368335c568 /gdk | |
parent | 87e9f0895b72540172884ff152b0957a39f4ee6d (diff) | |
download | gtk+-d72508590b9b4bde91c0e1445ac61be62c3af2ff.tar.gz |
wayland: Set display on keymaps
This was forgotten so far: The display of keymaps
was NULL.
Diffstat (limited to 'gdk')
-rw-r--r-- | gdk/wayland/gdkdevice-wayland.c | 2 | ||||
-rw-r--r-- | gdk/wayland/gdkdisplay-wayland.c | 2 | ||||
-rw-r--r-- | gdk/wayland/gdkkeys-wayland.c | 3 | ||||
-rw-r--r-- | gdk/wayland/gdkprivate-wayland.h | 2 |
4 files changed, 5 insertions, 4 deletions
diff --git a/gdk/wayland/gdkdevice-wayland.c b/gdk/wayland/gdkdevice-wayland.c index c170325c46..b6a950d658 100644 --- a/gdk/wayland/gdkdevice-wayland.c +++ b/gdk/wayland/gdkdevice-wayland.c @@ -4764,7 +4764,7 @@ _gdk_wayland_display_create_seat (GdkWaylandDisplay *display_wayland, "display", display_wayland, NULL); seat->id = id; - seat->keymap = _gdk_wayland_keymap_new (); + seat->keymap = _gdk_wayland_keymap_new (display); seat->display = display; seat->touches = g_hash_table_new_full (NULL, NULL, NULL, (GDestroyNotify) g_free); seat->foreign_dnd_window = create_foreign_dnd_window (display); diff --git a/gdk/wayland/gdkdisplay-wayland.c b/gdk/wayland/gdkdisplay-wayland.c index f02d9c6922..85cecc03c2 100644 --- a/gdk/wayland/gdkdisplay-wayland.c +++ b/gdk/wayland/gdkdisplay-wayland.c @@ -896,7 +896,7 @@ _gdk_wayland_display_get_keymap (GdkDisplay *display) return _gdk_wayland_device_get_keymap (core_keyboard); if (!tmp_keymap) - tmp_keymap = _gdk_wayland_keymap_new (); + tmp_keymap = _gdk_wayland_keymap_new (display); return tmp_keymap; } diff --git a/gdk/wayland/gdkkeys-wayland.c b/gdk/wayland/gdkkeys-wayland.c index c8a4d7e0ae..fd95b27374 100644 --- a/gdk/wayland/gdkkeys-wayland.c +++ b/gdk/wayland/gdkkeys-wayland.c @@ -540,13 +540,14 @@ update_direction (GdkWaylandKeymap *keymap) } GdkKeymap * -_gdk_wayland_keymap_new (void) +_gdk_wayland_keymap_new (GdkDisplay *display) { GdkWaylandKeymap *keymap; struct xkb_context *context; struct xkb_rule_names names; keymap = g_object_new (_gdk_wayland_keymap_get_type(), NULL); + GDK_KEYMAP (keymap)->display = display; context = xkb_context_new (0); diff --git a/gdk/wayland/gdkprivate-wayland.h b/gdk/wayland/gdkprivate-wayland.h index 39d6cfe1b3..6d3fe4c778 100644 --- a/gdk/wayland/gdkprivate-wayland.h +++ b/gdk/wayland/gdkprivate-wayland.h @@ -45,7 +45,7 @@ #define GDK_WINDOW_IS_WAYLAND(win) (GDK_IS_WINDOW_IMPL_WAYLAND (((GdkWindow *)win)->impl)) -GdkKeymap *_gdk_wayland_keymap_new (void); +GdkKeymap *_gdk_wayland_keymap_new (GdkDisplay *display); void _gdk_wayland_keymap_update_from_fd (GdkKeymap *keymap, uint32_t format, uint32_t fd, |