summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy White <jwhite@codeweavers.com>2019-08-20 12:29:32 -0500
committerFrediano Ziglio <fziglio@redhat.com>2020-03-13 12:59:16 +0000
commit651e34483bee21b5809de5b35681e3d6724228d7 (patch)
treef9d0d958af463495f9111bf7ed00423e968420af
parentae644b3475cdd1d81df5ff4fac5d5776936049c5 (diff)
Specify evdev as the default for Xkb.
Spice uses evdev codes, and this provides a better default on RHEL 7.3, which defaults to the base rules. Without evdev, the 'grey' extended keys (e.g. up/down/home/end) do not function properly. Acked-by: Frediano Ziglio <fziglio@redhat.com>
-rw-r--r--spice-video-dummy/src/spicedummy_driver.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/spice-video-dummy/src/spicedummy_driver.c b/spice-video-dummy/src/spicedummy_driver.c
index 543a3b4..db55cfa 100644
--- a/spice-video-dummy/src/spicedummy_driver.c
+++ b/spice-video-dummy/src/spicedummy_driver.c
@@ -29,6 +29,9 @@
#include "picturestr.h"
+/* Need to set xkb rules to evdev */
+#include "xkbsrv.h"
+
/*
* Driver data structures.
*/
@@ -327,6 +330,10 @@ DUMMYPreInit(ScrnInfoPtr pScrn, int flags)
int maxClock = 300000;
GDevPtr device = xf86GetEntityInfo(pScrn->entityList[0])->device;
+ XkbRMLVOSet rmlvo = {
+ .rules = (char *) "evdev"
+ };
+
if (flags & PROBE_DETECT) {
return TRUE;
}
@@ -490,6 +497,9 @@ DUMMYPreInit(ScrnInfoPtr pScrn, int flags)
pScrn->memPhysBase = 0;
pScrn->fbOffset = 0;
+ /* We pass in evdev style inputs */
+ XkbSetRulesDflts(&rmlvo);
+
return TRUE;
}