From 899883e222ae31def96ab255104507ff927e76e0 Mon Sep 17 00:00:00 2001
From: bobbie424242 <>
Date: Mar 22 2023 21:44:22 +0000
Subject: Update keyd to version 2.4.2 / rev 2 via SR 1073736
https://build.opensuse.org/request/show/1073736
by user bobbie424242 + dimstar_suse
added upstream patch fix-udev-tablet.patch to address the virtual
pointer being treated as a tablet, resulting in mouse pointer not working
---
diff --git a/packages/k/keyd/.files b/packages/k/keyd/.files
index 2dfab15..3aec780 100644
Binary files a/packages/k/keyd/.files and b/packages/k/keyd/.files differ
diff --git a/packages/k/keyd/.rev b/packages/k/keyd/.rev
index c10475b..70861b5 100644
--- a/packages/k/keyd/.rev
+++ b/packages/k/keyd/.rev
@@ -7,4 +7,14 @@
fixed upgrade in spec file1001022
+
+ 2f99d357ff106bb0192265e3f4d88e59
+ 2.4.2
+
+ dimstar_suse
+ added upstream patch fix-udev-tablet.patch to address the virtual
+pointer being treated as a tablet, resulting in mouse pointer not working
+
+ 1073736
+
diff --git a/packages/k/keyd/fix-udev-tablet.patch b/packages/k/keyd/fix-udev-tablet.patch
new file mode 100644
index 0000000..da0cfce
--- /dev/null
+++ b/packages/k/keyd/fix-udev-tablet.patch
@@ -0,0 +1,32 @@
+From 0fb86d3a95f0c91a4266391d05158cfd5dd4500f Mon Sep 17 00:00:00 2001
+From: Raheman Vaiya
+Date: Mon, 6 Mar 2023 17:54:51 -0500
+Subject: [PATCH] Fix mouse buttons (#441)
+
+The following change in udev seems to incorrectly identify the virtual
+pointer as a 'tablet pad'.
+
+https://github.com/systemd/systemd/commit/0855ce6772#diff-e3c18b2fc4f50acbb9f2d66a1daf229fde99a5c8785f17aa6f69e6a9c41ae2c7R261
+
+This patch removes the BTN_[0-9] capability from the virtual pointer (which is
+presently unused) to avoid the issue. It is unclear if this behaviour should
+be considered pathological in udev, since I can't find any documentation which
+suggests it is illegitimate for non tablet devices to make use of these codes.
+---
+ src/vkbd/uinput.c | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/src/vkbd/uinput.c b/src/vkbd/uinput.c
+index d93282a..992ba97 100644
+--- a/src/vkbd/uinput.c
++++ b/src/vkbd/uinput.c
+@@ -124,9 +124,6 @@ static int create_virtual_pointer(const char *name)
+ for (code = BTN_LEFT; code <= BTN_TASK; code++)
+ ioctl(fd, UI_SET_KEYBIT, code);
+
+- for (code = BTN_0; code <= BTN_9; code++)
+- ioctl(fd, UI_SET_KEYBIT, code);
+-
+ udev.id.bustype = BUS_USB;
+ udev.id.vendor = 0x0FAC;
+ udev.id.product = 0x1ADE;
diff --git a/packages/k/keyd/keyd.changes b/packages/k/keyd/keyd.changes
index dfb26c2..9ff9a41 100644
--- a/packages/k/keyd/keyd.changes
+++ b/packages/k/keyd/keyd.changes
@@ -1,4 +1,10 @@
-------------------------------------------------------------------
+Wed Mar 22 09:47:20 UTC 2023 - Michael Pujos
+
+- added upstream patch fix-udev-tablet.patch to address the virtual
+pointer being treated as a tablet, resulting in mouse pointer not working
+
+-------------------------------------------------------------------
Sat Sep 3 11:48:06 UTC 2022 - Michael Pujos
- fixed upgrades cluttering libinput overrides file
diff --git a/packages/k/keyd/keyd.spec b/packages/k/keyd/keyd.spec
index 85483c1..b06acec 100644
--- a/packages/k/keyd/keyd.spec
+++ b/packages/k/keyd/keyd.spec
@@ -1,7 +1,7 @@
#
# spec file for package keyd
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -24,10 +24,11 @@ Summary: A key remapping daemon for linux
License: MIT
URL: https://github.com/rvaiya/keyd
Source: %{url}/archive/refs/tags/v%{version}.tar.gz#/%{name}-v%{version}.tar.gz
+Patch: fix-udev-tablet.patch
BuildRequires: gcc
Requires: python3-xlib
-Requires(postun): sed
-Requires(postun): shadow
+Requires(postun):sed
+Requires(postun):shadow
Requires(pre): shadow
%systemd_ordering
@@ -40,7 +41,7 @@ keyd attempts to solve this problem by providing a flexible system wide daemon
which remaps keys using kernel level input primitives (evdev, uinput).
%prep
-%setup -q
+%autosetup -p1
%build
%make_build