[Pkg-libvirt-commits] [SCM] libgtk-vnc packaging branch, master, updated. debian/0.3.7-3-4-gd0fe410

Guido Guenther agx at sigxcpu.org
Wed Oct 29 08:12:35 UTC 2008


The following commit has been merged in the master branch:
commit 1e928cff01397508f0251e134c0dec779873a6a3
Author: Guido Günther <agx at sigxcpu.org>
Date:   Sun Oct 19 00:00:09 2008 +0200

    fix ungrab when switching from absolute to relativ pointer mode
    
    Patch pulled from upstream hg
    
    Closes: #503318

diff --git a/debian/patches/gtk-vnc-ungrab.diff b/debian/patches/gtk-vnc-ungrab.diff
new file mode 100644
index 0000000..d90e040
--- /dev/null
+++ b/debian/patches/gtk-vnc-ungrab.diff
@@ -0,0 +1,40 @@
+Author: Daniel P. Berrange
+Hg: 1bae3a18e487
+
+The 0.3.7 release has a nasty bug where if the server transitions from
+relative pointer mode, to absolute pointer mode while the mouse grab is
+active, it'll never let you ungrab. Unfortunately this happens during
+boot of many VMs.
+
+The change causing this was this:
+
+changeset:   219:e7d57ece8227
+user:        Jonh Wendell <wendell at bani.com.br>
+date:        Thu May 29 15:51:23 2008 -0300
+files:       src/vncdisplay.c
+description:
+Ignore CTRL-ALT key combination if we are autograbbing and pointer is absolute
+
+The motivation was right, but we need to tweak its handling slightly, so 
+that it honours an ungrab request if the grab is currently active. The
+attached patch fixes this
+
+diff -r cf0e849385e0 src/vncdisplay.c
+--- a/src/vncdisplay.c	Thu Sep 11 17:07:42 2008 +0100
++++ b/src/vncdisplay.c	Wed Sep 24 20:56:01 2008 +0100
+@@ -703,13 +703,12 @@
+ 		}
+ 	}
+ 
+-	if ((!priv->grab_keyboard || !priv->absolute) &&
+-	    key->type == GDK_KEY_PRESS &&
++	if (key->type == GDK_KEY_PRESS &&
+ 	    ((keyval == GDK_Control_L && (key->state & GDK_MOD1_MASK)) ||
+ 	     (keyval == GDK_Alt_L && (key->state & GDK_CONTROL_MASK)))) {
+ 		if (priv->in_pointer_grab)
+ 			do_pointer_ungrab(VNC_DISPLAY(widget), FALSE);
+-		else
++		else if (!priv->grab_keyboard || !priv->absolute)
+ 			do_pointer_grab(VNC_DISPLAY(widget), FALSE);
+ 	}
+ 
diff --git a/debian/patches/series b/debian/patches/series
index 2169d93..926832c 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,3 @@
 xulrunner-not-mozilla.diff
 plugindir.diff
+gtk-vnc-ungrab.diff

-- 
libgtk-vnc packaging



More information about the Pkg-libvirt-commits mailing list