[caribou] xadapter: specify core device when calling XkbSetMap



commit 661d4dcb62c201e1a8899e91f09fcaa1a0206294
Author: Daiki Ueno <ueno unixuser org>
Date:   Thu Oct 25 15:19:44 2012 +0900

    xadapter: specify core device when calling XkbSetMap
    
    device_spec needs to be specified when calling XkbSetMap so that
    the keymap change affects XTestFakeKeyEvent.  Also fix the type
    of syms field in XkbClientMap Vala binding.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=673547

 libcaribou/external-libs.vapi |    2 +-
 libcaribou/xadapter.vala      |    1 +
 2 files changed, 2 insertions(+), 1 deletions(-)
---
diff --git a/libcaribou/external-libs.vapi b/libcaribou/external-libs.vapi
index e2c73db..209d064 100644
--- a/libcaribou/external-libs.vapi
+++ b/libcaribou/external-libs.vapi
@@ -119,7 +119,7 @@ namespace Xkb {
         public ushort           size_syms;
         public ushort           num_syms;
         [CCode (array_length = false, array_null_terminated = true)]
-        public uint[]           syms;
+        public ulong[]          syms;
         [CCode (array_length = false, array_null_terminated = true)]
         public SymMap[]         key_sym_map;
 
diff --git a/libcaribou/xadapter.vala b/libcaribou/xadapter.vala
index fba9df9..a222f2f 100644
--- a/libcaribou/xadapter.vala
+++ b/libcaribou/xadapter.vala
@@ -156,6 +156,7 @@ namespace Caribou {
             uint offset = this.xkbdesc.map.key_sym_map[this.reserved_keycode].offset;
 
             this.xkbdesc.map.syms[offset] = keysym;
+            this.xkbdesc.device_spec = (ushort) Xkb.UseCoreKbd;
 
             Xkb.set_map (this.xdisplay, Xkb.AllMapComponentsMask, this.xkbdesc);
             /**



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]