From 67cfa0a716014d0d91de42b85395d73a3aa6dfb2 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Sun, 13 Sep 2015 23:52:10 +0200 Subject: Backport a patch to fix mouse scroll wheel events https://bugzilla.redhat.com/show_bug.cgi?id=1258236 --- 0001-x11-Declare-variable-for-the-inner-loop.patch | 39 ++++++++++++++++++++++ gtk3.spec | 9 ++++- 2 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 0001-x11-Declare-variable-for-the-inner-loop.patch diff --git a/0001-x11-Declare-variable-for-the-inner-loop.patch b/0001-x11-Declare-variable-for-the-inner-loop.patch new file mode 100644 index 0000000..8d40eb7 --- /dev/null +++ b/0001-x11-Declare-variable-for-the-inner-loop.patch @@ -0,0 +1,39 @@ +From dbf85cc4dba2d659c65f18caadad256304a1f5d1 Mon Sep 17 00:00:00 2001 +From: Carlos Garnacho +Date: Wed, 9 Sep 2015 16:05:15 +0200 +Subject: [PATCH] x11: Declare variable for the inner loop + +Otherwise the outer loop control variable is messed up, and we end +up with uninitialized axes if there were any more valuators after +the XIKeyClass one. + +This bug was sneakily introduced by fdb9a8e14, many thanks to +Carlos Soriano for helping spot the source of this bug. + +https://bugzilla.gnome.org/show_bug.cgi?id=753431 +--- + gdk/x11/gdkdevicemanager-xi2.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/gdk/x11/gdkdevicemanager-xi2.c b/gdk/x11/gdkdevicemanager-xi2.c +index e63c35b..2401ff1 100644 +--- a/gdk/x11/gdkdevicemanager-xi2.c ++++ b/gdk/x11/gdkdevicemanager-xi2.c +@@ -214,11 +214,12 @@ translate_device_classes (GdkDisplay *display, + case XIKeyClass: + { + XIKeyClassInfo *key_info = (XIKeyClassInfo *) class_info; ++ gint j; + + _gdk_device_set_keys (device, key_info->num_keycodes); + +- for (i = 0; i < key_info->num_keycodes; i++) +- gdk_device_set_key (device, i, key_info->keycodes[i], 0); ++ for (j = 0; j < key_info->num_keycodes; j++) ++ gdk_device_set_key (device, j, key_info->keycodes[j], 0); + } + break; + case XIValuatorClass: +-- +2.4.3 + diff --git a/gtk3.spec b/gtk3.spec index 7377332..c9146e3 100644 --- a/gtk3.spec +++ b/gtk3.spec @@ -18,7 +18,7 @@ Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X Name: gtk3 Version: 3.17.8 -Release: 1%{?dist} +Release: 2%{?dist} License: LGPLv2+ Group: System Environment/Libraries URL: http://www.gtk.org @@ -26,6 +26,9 @@ URL: http://www.gtk.org Source: http://download.gnome.org/sources/gtk+/3.17/gtk+-%{version}.tar.xz +# Backported upstream patch to fix mouse scroll wheel events +Patch0: 0001-x11-Declare-variable-for-the-inner-loop.patch + BuildRequires: gnome-common autoconf automake intltool gettext BuildRequires: pkgconfig(atk) >= %{atk_version} BuildRequires: pkgconfig(atk-bridge-2.0) @@ -167,6 +170,7 @@ the functionality of the installed %{name} package. %prep %setup -q -n gtk+-%{version} +%patch0 -p1 %build @@ -337,6 +341,9 @@ gtk-query-immodules-3.0-%{__isa_bits} --update-cache %{_datadir}/installed-tests %changelog +* Sun Sep 13 2015 Kalev Lember - 3.17.8-2 +- Backport a patch to fix mouse scroll wheel events (#1258236) + * Wed Sep 02 2015 Kalev Lember - 3.17.8-1 - Update to 3.17.8 -- cgit