packages: vte/vte.spec, vte/vte-alt-meta.patch (NEW) - fix for https://bugz...

megabajt megabajt at pld-linux.org
Fri Nov 18 21:23:53 CET 2011


Author: megabajt                     Date: Fri Nov 18 20:23:53 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- fix for https://bugzilla.gnome.org/show_bug.cgi?id=663779
- release 2

---- Files affected:
packages/vte:
   vte.spec (1.174 -> 1.175) , vte-alt-meta.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/vte/vte.spec
diff -u packages/vte/vte.spec:1.174 packages/vte/vte.spec:1.175
--- packages/vte/vte.spec:1.174	Mon Oct 17 21:18:14 2011
+++ packages/vte/vte.spec	Fri Nov 18 21:23:47 2011
@@ -3,11 +3,13 @@
 Summary(pl.UTF-8):	Biblioteka z kontrolką terminala VTE
 Name:		vte
 Version:	0.30.1
-Release:	1
+Release:	2
 License:	LGPL v2+
 Group:		X11/Libraries
 Source0:	http://ftp.gnome.org/pub/GNOME/sources/vte/0.30/%{name}-%{version}.tar.xz
 # Source0-md5:	514f48346f176f91297731f6fdb1cffc
+# https://bugzilla.gnome.org/show_bug.cgi?id=663779
+Patch0:		%{name}-alt-meta.patch
 BuildRequires:	autoconf >= 2.63
 BuildRequires:	automake >= 1:1.9
 BuildRequires:	docbook-dtd412-xml
@@ -98,6 +100,7 @@
 
 %prep
 %setup -q
+%patch0 -p1
 
 %build
 %{__gtkdocize}
@@ -173,6 +176,10 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.175  2011/11/18 20:23:47  megabajt
+- fix for https://bugzilla.gnome.org/show_bug.cgi?id=663779
+- release 2
+
 Revision 1.174  2011/10/17 19:18:14  kiesiu
 - updated to 0.30.1
 

================================================================
Index: packages/vte/vte-alt-meta.patch
diff -u /dev/null packages/vte/vte-alt-meta.patch:1.1
--- /dev/null	Fri Nov 18 21:23:53 2011
+++ packages/vte/vte-alt-meta.patch	Fri Nov 18 21:23:47 2011
@@ -0,0 +1,74 @@
+From 180dcc578e13c6096e277fb853e7162db640f207 Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino at gentoo.org>
+Date: Tue, 15 Nov 2011 03:06:40 -0500
+Subject: [PATCH] Map both gdk's Meta and Alt to vte's Meta for >=gtk+-3.2.2
+ compatibility
+
+Also, since VTE_META_MASK is now a mask with multiple bits set, code that
+compares gdk key modifiers to VTE_META_MASK by numerical equality is no
+longer guaranteed to work. Therefore, for such comparisons a new function,
+vte_keymap_fixup_modifiers, is introduced; it ensures that if any bits
+matching matching VTE_META_MASK are set, then all are set.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=663779
+---
+ src/keymap.c |   15 +++++++++++++--
+ src/keymap.h |    2 +-
+ 2 files changed, 14 insertions(+), 3 deletions(-)
+
+diff --git a/src/keymap.c b/src/keymap.c
+index 9a21669..95b4c5b 100644
+--- a/src/keymap.c
++++ b/src/keymap.c
+@@ -990,6 +990,17 @@ static const struct _vte_keymap_group {
+ 	{GDK_KEY (F35),		_vte_keymap_GDK_F35},
+ };
+ 
++/* Restrict modifiers to the specified mask and ensure that VTE_META_MASK,
++ * despite being a compound mask, is treated as indivisible. */
++GdkModifierType
++_vte_keymap_fixup_modifiers(GdkModifierType modifiers,
++		GdkModifierType mask)
++{
++	if (modifiers & VTE_META_MASK)
++		modifiers |= VTE_META_MASK;
++	return modifiers & mask;
++}
++
+ /* Map the specified keyval/modifier setup, dependent on the mode, to either
+  * a literal string or a capability name. */
+ void
+@@ -1104,7 +1115,7 @@ _vte_keymap_map(guint keyval,
+ 	} else {
+ 		fkey_mode = fkey_default;
+ 	}
+-	modifiers &= (GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK);
++	modifiers = _vte_keymap_fixup_modifiers(modifiers, GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK);
+ 
+ 	/* Search for the conditions. */
+ 	for (i = 0; entries[i].normal_length || entries[i].special[0]; i++)
+@@ -1375,7 +1386,7 @@ _vte_keymap_key_add_key_modifiers(guint keyval,
+ 		return;
+ 	}
+ 
+-	switch (modifiers & significant_modifiers) {
++	switch (_vte_keymap_fixup_modifiers(modifiers, significant_modifiers)) {
+ 	case 0:
+ 		modifier = 0;
+ 		break;
+diff --git a/src/keymap.h b/src/keymap.h
+index 243e22e..21d9b8e 100644
+--- a/src/keymap.h
++++ b/src/keymap.h
+@@ -27,7 +27,7 @@
+ 
+ G_BEGIN_DECLS
+ 
+-#define VTE_META_MASK		GDK_META_MASK
++#define VTE_META_MASK		(GDK_META_MASK | GDK_MOD1_MASK)
+ #define VTE_NUMLOCK_MASK	GDK_MOD2_MASK
+ 
+ /* Map the specified keyval/modifier setup, dependent on the mode, to either
+-- 
+1.7.8.rc3
+
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/vte/vte.spec?r1=1.174&r2=1.175&f=u



More information about the pld-cvs-commit mailing list