Upstream patches allow build to succeed with new vala and gobject-introspection. It seems libcaribou is still required by the lock screen in Cinnamon, so the package must be restored. This reverts commit 5b0c846dd8798d337dc6fd54beeffa2ab92fe28e.
47 lines
1.8 KiB
Diff
47 lines
1.8 KiB
Diff
From d41c8e44b12222a290eaca16703406b113a630c6 Mon Sep 17 00:00:00 2001
|
||
From: Michael Webster <miketwebster@gmail.com>
|
||
Date: Tue, 12 Jan 2021 18:01:47 +0000
|
||
Subject: [PATCH] xadapter.vala: Remove XkbKeyTypesMask and fields from
|
||
XKbChangeMap call.
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=UTF-8
|
||
Content-Transfer-Encoding: 8bit
|
||
|
||
This was originally a workaround for xFree86 4.3 - see:
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=673547
|
||
|
||
As of https://gitlab.freedesktop.org/xorg/xserver/-/commit/87c64fc5b0 this
|
||
causes a BadLength error when attempting to use shifted characters.
|
||
|
||
Ref:
|
||
https://www.x.org/releases/X11R7.7/doc/libX11/XKB/xkblib.html#Changing_Map_Components_in_the_Server
|
||
---
|
||
libcaribou/xadapter.vala | 9 ++-------
|
||
1 file changed, 2 insertions(+), 7 deletions(-)
|
||
|
||
diff --git a/libcaribou/xadapter.vala b/libcaribou/xadapter.vala
|
||
index 22858b7..1da5a78 100644
|
||
--- a/libcaribou/xadapter.vala
|
||
+++ b/libcaribou/xadapter.vala
|
||
@@ -195,15 +195,10 @@ namespace Caribou {
|
||
|
||
Xkb.MapChanges changes = Xkb.MapChanges ();
|
||
|
||
- // We don't touch key types here but include the
|
||
- // information in XkbSetMap request to the server, because
|
||
- // some X servers need the information to check the sanity
|
||
- // of the keysyms change.
|
||
- changes.changed = (ushort) (Xkb.KeySymsMask | Xkb.KeyTypesMask);
|
||
+ changes.changed = (ushort) Xkb.KeySymsMask;
|
||
changes.first_key_sym = (char) this.reserved_keycode;
|
||
changes.num_key_syms = this.xkbdesc.map.key_sym_map[this.reserved_keycode].width;
|
||
- changes.first_type = 0;
|
||
- changes.num_types = this.xkbdesc.map.num_types;
|
||
+
|
||
Xkb.change_map (this.xdisplay, this.xkbdesc, changes);
|
||
|
||
this.xdisplay.flush ();
|
||
--
|
||
GitLab
|
||
|