~ubuntu-branches/ubuntu/utopic/gnome-settings-daemon/utopic

« back to all changes in this revision

Viewing changes to debian/patches/git-mask-out-virtual-modifiers.patch

  • Committer: Package Import Robot
  • Author(s): Sebastien Bacher, Sebastien Bacher, Robert Ancell, Rico Tzschichholz, Iain Lane
  • Date: 2012-11-21 17:16:23 UTC
  • mfrom: (1.1.62)
  • Revision ID: package-import@ubuntu.com-20121121171623-k7iufrs14qoiozeq
Tags: 3.6.3-0ubuntu1
[ Sebastien Bacher ]
* New upstream version (lp: #1008840)
* debian/patches/git*,
  debian/patches/power-ignore-bad-dbus-requests.patch,
  debian/patches/power-ignore-bad-dbus-requests.patch,
  debian/patches/10_smaller_syndaemon_timeout.patch: 
  - dropped, those fixes are in the new version
* debian/control.in:
  - restore build-depends on libgnomekbd-dev, libxklavier-dev,
    drop the build-depends on libxkbfile-dev
* debian/patches/20_migrate_background_uri.patch:
  - dropped, it was only needed until the LTS
* debian/patches/40_xres_lcddefault.patch:
  - dropped, that was a workaround for libreoffice that shouldn't be
    needed and we should better fix libreoffice
* debian/patches/61_unity_use_application_indicator.patch:
  - drop the keyboard indicator code, that will need to be turned 
    into a proper indicator refactored to handle the new ibus config
* debian/patches/90_set_gmenus_xsettings.patch:
  - refreshed for the new version
* debian/patches/revert_new_ibus_use.patch:
  - revert keyboard code to our 3.4 version
* debian/patches/sync_keyboard_layout_to_accountsservice.patch:
  - dropped, the changes are included in the previous patch

[ Robert Ancell ]
* New upstream release
* debian/control:
  - Bump build-depends on libgnome-desktop-3-dev, libwacom-dev
  - Drop build-depends on libgnomekbd-dev, libxklavier-dev
  - Add build-depends on libxkbfile-dev

[ Rico Tzschichholz ]
* debian/control.in:
  - Build-depend on gtk-doc-tools

[ Iain Lane ]
* New upstream release
* Refresh patches and remove those applied upstream.
* Remove gstreamer BDs which are now obsolete. 

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
From 53cbbc00df3884bc3ca87e2818a08ba3ba2fabac Mon Sep 17 00:00:00 2001
2
 
From: Keng-Yu Lin <kengyu@ubuntu.com>
3
 
Date: Tue, 22 May 2012 15:11:26 +0800
4
 
Subject: [PATCH] common: mask out virtual modifiers in key grabbing code
5
 
 
6
 
gdk_keymap_map_virtual_modifiers converts all the virtual
7
 
modifiers in the state mask (Super, Hyper, Meta, etc) of a
8
 
key event to the real modifiers they're mapped to. This
9
 
call is needed, because XGrabKey and friends only work
10
 
with real modifiers (Mod1, Mod2, ...).
11
 
 
12
 
Unforunately, gdk_keymap_map_virtual_modifiers doesn't mask
13
 
out the virtual modifers, it merely adds in the associated
14
 
real ones.
15
 
 
16
 
This commit does the masking immediately following the call,
17
 
so that virtual modifier don't ultimately get passed to X
18
 
when setting up the key grabs.
19
 
 
20
 
https://bugzilla.gnome.org/show_bug.cgi?id=676300
21
 
---
22
 
 plugins/common/gsd-keygrab.c |    2 ++
23
 
 1 file changed, 2 insertions(+)
24
 
 
25
 
diff --git a/plugins/common/gsd-keygrab.c b/plugins/common/gsd-keygrab.c
26
 
index f8432cd..bb85b87 100644
27
 
--- a/plugins/common/gsd-keygrab.c
28
 
+++ b/plugins/common/gsd-keygrab.c
29
 
@@ -153,6 +153,7 @@ grab_key_unsafe (Key                 *key,
30
 
         /* XGrabKey requires real modifiers, not virtual ones */
31
 
         modifiers = key->state;
32
 
         gdk_keymap_map_virtual_modifiers (gdk_keymap_get_default (), &modifiers);
33
 
+        modifiers &= ~(GDK_META_MASK | GDK_SUPER_MASK | GDK_HYPER_MASK);
34
 
 
35
 
         /* If key doesn't have a usable modifier, we don't want
36
 
          * to grab it, since the user might lose a useful key.
37
 
@@ -324,6 +325,7 @@ match_xi2_key (Key *key, XIDeviceEvent *event)
38
 
                 * the XEvent will be using the real modifier, so translate those */
39
 
                mask = key->state;
40
 
                gdk_keymap_map_virtual_modifiers (gdk_keymap_get_default (), &mask);
41
 
+                mask &= ~(GDK_META_MASK | GDK_SUPER_MASK | GDK_HYPER_MASK);
42
 
 
43
 
                gdk_keyval_convert_case (keyval, &lower, &upper);
44
 
 
45
 
1.7.9.5
46