diff --git a/0001-Make-level3-keys-work-again.patch b/0001-Make-level3-keys-work-again.patch new file mode 100644 index 0000000..c2bc98c --- /dev/null +++ b/0001-Make-level3-keys-work-again.patch @@ -0,0 +1,40 @@ +From d4b92737abaf1f7d25090cc989846ca130617b73 Mon Sep 17 00:00:00 2001 +From: Matthias Clasen +Date: Wed, 25 Nov 2009 01:02:40 -0500 +Subject: [PATCH] Make level3 keys work again + +We were not paying attention to consumed modifiers when adding +virtual modifiers. This fixes RH bug 537567. +--- + gdk/x11/gdkevents-x11.c | 7 +++++-- + 1 files changed, 5 insertions(+), 2 deletions(-) + +diff --git a/gdk/x11/gdkevents-x11.c b/gdk/x11/gdkevents-x11.c +index 032f9a5..a9efe76 100644 +--- a/gdk/x11/gdkevents-x11.c ++++ b/gdk/x11/gdkevents-x11.c +@@ -618,6 +618,7 @@ translate_key_event (GdkDisplay *display, + GdkKeymap *keymap = gdk_keymap_get_for_display (display); + gunichar c = 0; + gchar buf[7]; ++ GdkModifierType consumed, state; + + event->key.type = xevent->xany.type == KeyPress ? GDK_KEY_PRESS : GDK_KEY_RELEASE; + event->key.time = xevent->xkey.time; +@@ -633,9 +634,11 @@ translate_key_event (GdkDisplay *display, + event->key.state, + event->key.group, + &event->key.keyval, +- NULL, NULL, NULL); ++ NULL, NULL, &consumed); ++ state = event->key.state & ~consumed; ++ _gdk_keymap_add_virtual_modifiers (keymap, &state); ++ event->key.state |= state; + +- _gdk_keymap_add_virtual_modifiers (keymap, &event->key.state); + event->key.is_modifier = _gdk_keymap_key_is_modifier (keymap, event->key.hardware_keycode); + + /* Fill in event->string crudely, since various programs +-- +1.6.5.2 + diff --git a/gtk2.spec b/gtk2.spec index 655702a..07a42f1 100644 --- a/gtk2.spec +++ b/gtk2.spec @@ -17,7 +17,7 @@ Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X Name: gtk2 Version: %{base_version} -Release: 21%{?dist} +Release: 22%{?dist} License: LGPLv2+ Group: System Environment/Libraries Source: http://download.gnome.org/sources/gtk+/2.18/gtk+-%{version}.tar.bz2 @@ -54,6 +54,8 @@ Patch13: gtk2-rotate-layout.patch Patch14: gtk2-landscape-pdf-print.patch # https://bugzilla.gnome.org/show_bug.cgi?id=600992 Patch15: filesystemref.patch +# fixed upstream +Patch16: 0001-Make-level3-keys-work-again.patch BuildRequires: atk-devel >= %{atk_version} BuildRequires: pango-devel >= %{pango_version} @@ -180,6 +182,7 @@ This package contains developer documentation for the GTK+ widget toolkit. %patch13 -p1 -b .rotate-layout %patch14 -p1 -b .landscape-pdf-print %patch15 -p1 -b .filesystemref +%patch16 -p1 -b .level3 %build libtoolize --force --copy @@ -417,6 +420,9 @@ fi %changelog +* Wed Nov 25 2009 Matthias Clasen - 2.18.3-22 +- Make level3 keys work again (#537567) + * Tue Nov 10 2009 Matthias Clasen - 2.18.3-21 - Fix refcounting issues in the filechooser that lead to crashes with device hotplug (gnome #600992)