r29569 - in /desktop/unstable/gtk+3.0/debian: changelog patches/030_xim-modules.patch patches/series

joss at users.alioth.debian.org joss at users.alioth.debian.org
Sun Sep 4 13:37:25 UTC 2011


Author: joss
Date: Sun Sep  4 13:37:25 2011
New Revision: 29569

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=29569
Log:
030_xim-modules.patch: stolen from upstream git. Fix the behavior of 
XIM modules. Closes: #633720.

Added:
    desktop/unstable/gtk+3.0/debian/patches/030_xim-modules.patch
Modified:
    desktop/unstable/gtk+3.0/debian/changelog
    desktop/unstable/gtk+3.0/debian/patches/series

Modified: desktop/unstable/gtk+3.0/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gtk%2B3.0/debian/changelog?rev=29569&op=diff
==============================================================================
--- desktop/unstable/gtk+3.0/debian/changelog [utf-8] (original)
+++ desktop/unstable/gtk+3.0/debian/changelog [utf-8] Sun Sep  4 13:37:25 2011
@@ -1,3 +1,10 @@
+gtk+3.0 (3.0.12-3) UNRELEASED; urgency=low
+
+  * 030_xim-modules.patch: stolen from upstream git. Fix the behavior of 
+    XIM modules. Closes: #633720.
+
+ -- Josselin Mouette <joss at debian.org>  Sun, 04 Sep 2011 15:36:14 +0200
+
 gtk+3.0 (3.0.12-2) unstable; urgency=low
 
   [ Josselin Mouette ]

Added: desktop/unstable/gtk+3.0/debian/patches/030_xim-modules.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gtk%2B3.0/debian/patches/030_xim-modules.patch?rev=29569&op=file
==============================================================================
--- desktop/unstable/gtk+3.0/debian/patches/030_xim-modules.patch (added)
+++ desktop/unstable/gtk+3.0/debian/patches/030_xim-modules.patch [utf-8] Sun Sep  4 13:37:25 2011
@@ -1,0 +1,36 @@
+From d3274e8e0619bad02a7fa31874943707dc209fc8 Mon Sep 17 00:00:00 2001
+From: Carlos Garnacho <carlosg at gnome.org>
+Date: Sat, 02 Apr 2011 09:46:42 +0000
+Subject: xi2: Handle XIM modules that replace events
+
+Fixes Bug 645993 - XIM has wierd behaviors. Some XIM modules
+filter every key event, possibly replacing it with their own
+one. These events usually have serial=0, so make
+GdkDeviceManagerXI2 also listen on these.
+---
+diff --git a/gdk/x11/gdkdevicemanager-xi2.c b/gdk/x11/gdkdevicemanager-xi2.c
+index 64d0f59..1953b48 100644
+--- a/gdk/x11/gdkdevicemanager-xi2.c
++++ b/gdk/x11/gdkdevicemanager-xi2.c
+@@ -938,13 +938,18 @@ gdk_x11_device_manager_xi2_translate_core_event (GdkEventTranslator *translator,
+   gboolean keyboard = FALSE;
+   GdkDevice *device;
+ 
+-  if (xevent->type == KeyPress && xevent->xkey.keycode == 0)
++  if ((xevent->type == KeyPress || xevent->type == KeyRelease) &&
++      (xevent->xkey.keycode == 0 || xevent->xkey.serial == 0))
+     {
+       /* The X input methods (when triggered via XFilterEvent)
+        * generate a core key press event with keycode 0 to signal the
+        * end of a key sequence. We use the core translate_event
+        * implementation to translate this event.
+        *
++       * Other less educated IM modules like to filter every keypress,
++       * only to have these replaced by their own homegrown events,
++       * these events oddly have serial=0, so we try to catch these.
++       *
+        * This is just a bandaid fix to keep xim working with a single
+        * keyboard until XFilterEvent learns about XI2.
+        */
+--
+cgit v0.9.0.2

Modified: desktop/unstable/gtk+3.0/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gtk%2B3.0/debian/patches/series?rev=29569&op=diff
==============================================================================
--- desktop/unstable/gtk+3.0/debian/patches/series [utf-8] (original)
+++ desktop/unstable/gtk+3.0/debian/patches/series [utf-8] Sun Sep  4 13:37:25 2011
@@ -3,6 +3,7 @@
 003_gdk.pc_privates.patch
 015_default-fallback-icon-theme.patch
 022_disable-viqr-im-for-vi-locale.patch
+030_xim-modules.patch
 041_ia32-libs.patch
 042_treeview_single-focus.patch
 043_notebook_scroll.patch




More information about the pkg-gnome-commits mailing list