After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 736433 - Wire keymap changes up to the wayland frontend
Wire keymap changes up to the wayland frontend
Status: RESOLVED FIXED
Product: mutter
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: mutter-maint
mutter-maint
Depends on:
Blocks:
 
 
Reported: 2014-09-10 18:32 UTC by Rui Matos
Modified: 2014-09-11 17:09 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
keybindings: Freeze and ungrab the keyboard only on X11 backend (1.15 KB, patch)
2014-09-10 18:32 UTC, Rui Matos
committed Details | Review
wayland-keyboard: Handle keymap-changed signal (1.90 KB, patch)
2014-09-10 18:32 UTC, Rui Matos
reviewed Details | Review
backends: Add a keymap-layout-group-changed signal (1.58 KB, patch)
2014-09-10 18:33 UTC, Rui Matos
reviewed Details | Review
wayland-keyboard: Handle keymap-layout-group-changed signal (4.98 KB, patch)
2014-09-10 18:33 UTC, Rui Matos
committed Details | Review
wayland-keyboard: Handle keymap-changed signal (1.88 KB, patch)
2014-09-11 15:06 UTC, Rui Matos
committed Details | Review
backends: Add a keymap-layout-group-changed signal (1.77 KB, patch)
2014-09-11 15:07 UTC, Rui Matos
committed Details | Review

Description Rui Matos 2014-09-10 18:32:51 UTC
The first patch isn't really related but it's needed anyway otherwise
the code in gnome-shell around input source switching makes us crash
when running native.
Comment 1 Rui Matos 2014-09-10 18:32:54 UTC
Created attachment 285846 [details] [review]
keybindings: Freeze and ungrab the keyboard only on X11 backend

This isn't needed in the native backend because we control all the
input event flow there.
Comment 2 Rui Matos 2014-09-10 18:32:59 UTC
Created attachment 285847 [details] [review]
wayland-keyboard: Handle keymap-changed signal

We need to inform wayland clients of new keymaps.
Comment 3 Rui Matos 2014-09-10 18:33:03 UTC
Created attachment 285848 [details] [review]
backends: Add a keymap-layout-group-changed signal

We'll need this in the wayland frontend to send a modifiers event to
clients.
Comment 4 Rui Matos 2014-09-10 18:33:07 UTC
Created attachment 285849 [details] [review]
wayland-keyboard: Handle keymap-layout-group-changed signal

We need to send a modifiers event to wayland clients when the layout
group changes.
Comment 5 Jasper St. Pierre (not reading bugmail) 2014-09-11 00:37:57 UTC
Review of attachment 285846 [details] [review]:

OK.
Comment 6 Jasper St. Pierre (not reading bugmail) 2014-09-11 00:38:39 UTC
Review of attachment 285847 [details] [review]:

::: src/wayland/meta-wayland-keyboard.c
@@ +214,3 @@
+
+  meta_wayland_keyboard_take_keymap (keyboard,
+                                     meta_backend_get_keymap (backend));

Put this all on one line.

@@ +371,2 @@
   meta_wayland_keyboard_take_keymap (keyboard,
+                                     meta_backend_get_keymap (backend));

Same here.
Comment 7 Jasper St. Pierre (not reading bugmail) 2014-09-11 00:39:28 UTC
Review of attachment 285848 [details] [review]:

Do we not want an implementation of this under X11?
Comment 8 Jasper St. Pierre (not reading bugmail) 2014-09-11 00:41:32 UTC
Review of attachment 285849 [details] [review]:

Makes sense to me.
Comment 9 Rui Matos 2014-09-11 15:06:17 UTC
Created attachment 285925 [details] [review]
wayland-keyboard: Handle keymap-changed signal

--
Fixed the broken lines.
Comment 10 Rui Matos 2014-09-11 15:07:39 UTC
Created attachment 285926 [details] [review]
backends: Add a keymap-layout-group-changed signal

We'll need this in the wayland frontend to send a modifiers event to
clients.

Note that on X11 this isn't needed because key events include the
group index encoded in modifier state. If we ever want to make the
wayland frontend work with the X11 backend we'll handle it then.
--

(In reply to comment #7)
> Do we not want an implementation of this under X11?

See the expanded commit message above.
Comment 11 Jasper St. Pierre (not reading bugmail) 2014-09-11 15:29:11 UTC
(In reply to comment #10)
> Created an attachment (id=285926) [details] [review]
> backends: Add a keymap-layout-group-changed signal
> 
> We'll need this in the wayland frontend to send a modifiers event to
> clients.
> 
> Note that on X11 this isn't needed because key events include the
> group index encoded in modifier state. If we ever want to make the
> wayland frontend work with the X11 backend we'll handle it then.

That's what nested --wayland mode is. I'm fine with omitting some of the trickier parts of input sources / keyboard though, I guess.
Comment 12 Jasper St. Pierre (not reading bugmail) 2014-09-11 15:29:30 UTC
Review of attachment 285925 [details] [review]:

OK.
Comment 13 Jasper St. Pierre (not reading bugmail) 2014-09-11 15:29:44 UTC
Review of attachment 285926 [details] [review]:

LG.
Comment 14 Rui Matos 2014-09-11 17:08:55 UTC
Attachment 285846 [details] pushed as 6ba0491 - keybindings: Freeze and ungrab the keyboard only on X11 backend
Attachment 285849 [details] pushed as 656573c - wayland-keyboard: Handle keymap-layout-group-changed signal
Attachment 285925 [details] pushed as 5309242 - wayland-keyboard: Handle keymap-changed signal
Attachment 285926 [details] pushed as 59c5ac0 - backends: Add a keymap-layout-group-changed signal