Package: release.debian.org Severity: normal User: [email protected] Usertags: unblock
Hi, this is a pre-upload unblock request for xfwm4. It seems that Gtk3 applications might trigger a bad behavior in xfwm, where the window might “jump” widely on the screen in some cases. There's an upstream patch against xfwm4 4.10 which has been backported to 4.8. Could this be allowed in Wheezy? It's not really critical but it's very annoying in an Xfce desktop with gtk3 applications. The debdiff is attached. There are some other change in debian/control (build-dep and standards versions) which can easily be reverted if needed. Please unblock package xfwm4 unblock xfwm4/4.8.3-2 -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 3.2.0-4-grsec-amd64 (SMP w/4 CPU cores) Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash
diff -Nru xfwm4-4.8.3/debian/changelog xfwm4-4.8.3/debian/changelog --- xfwm4-4.8.3/debian/changelog 2011-12-20 08:39:25.000000000 +0100 +++ xfwm4-4.8.3/debian/changelog 2012-09-02 14:53:16.000000000 +0200 @@ -1,3 +1,17 @@ +xfwm4 (4.8.3-2) UNRELEASED; urgency=low + + [ Lionel Le Folgoc ] + * debian/patches: + - 01_implement-NET_WM_MOVERESIZE_CANCEL-message.patch: added, + fix window grab/move triggered on mouse click with gtk3. Closes: #684911 + + [ Yves-Alexis Perez ] + * debian/control: + - build-dep on debhelper 9. + - update standards versions to 3.9.3. + + -- Lionel Le Folgoc <[email protected]> Wed, 15 Aug 2012 18:04:05 +0200 + xfwm4 (4.8.3-1) unstable; urgency=low [ Lionel Le Folgoc ] diff -Nru xfwm4-4.8.3/debian/control xfwm4-4.8.3/debian/control --- xfwm4-4.8.3/debian/control 2011-10-11 14:13:51.000000000 +0200 +++ xfwm4-4.8.3/debian/control 2012-09-02 14:53:00.000000000 +0200 @@ -4,13 +4,13 @@ Maintainer: Debian Xfce Maintainers <[email protected]> Uploaders: Yves-Alexis Perez <[email protected]>, Lionel Le Folgoc <[email protected]> -Build-Depends: dpkg-dev (>= 1.16.1), debhelper (>= 8.9.4), +Build-Depends: dpkg-dev (>= 1.16.1), debhelper (>= 9), libgtk2.0-dev (>= 2.10.6), libxft-dev, libxdamage-dev, libxrender-dev, libxcomposite-dev, libxfixes-dev, chrpath, libglade2-dev, libxfce4util-dev (>= 4.8.0), libxfce4ui-1-dev (>= 4.8.0), libxfconf-0-dev (>= 4.8.0), libwnck-dev, intltool Build-Conflicts: libxfcegui4-dev (<< 4.7.0) -Standards-Version: 3.9.2 +Standards-Version: 3.9.3 Homepage: http://www.xfce.org/ Vcs-Svn: svn://svn.debian.org/pkg-xfce/desktop/trunk/xfwm4/ Vcs-Browser: http://svn.debian.org/wsvn/pkg-xfce/desktop/trunk/xfwm4/ diff -Nru xfwm4-4.8.3/debian/patches/01_implement-NET_WM_MOVERESIZE_CANCEL-message.patch xfwm4-4.8.3/debian/patches/01_implement-NET_WM_MOVERESIZE_CANCEL-message.patch --- xfwm4-4.8.3/debian/patches/01_implement-NET_WM_MOVERESIZE_CANCEL-message.patch 1970-01-01 01:00:00.000000000 +0100 +++ xfwm4-4.8.3/debian/patches/01_implement-NET_WM_MOVERESIZE_CANCEL-message.patch 2012-08-15 18:12:51.000000000 +0200 @@ -0,0 +1,79 @@ +Description: Implement NET_WM_MOVERESIZE_CANCEL message (bug #8949) + as gtk+-3.4 now uses it. + + Backported to apply cleanly against xfwm 4.8.x. + +Origin: upstream, http://git.xfce.org/xfce/xfwm4/commit/?h=xfce-4.10&id=0b39bbe0b3b5bf514dea223ec96cd25ea4e1444f +Bug: https://bugzilla.xfce.org/show_bug.cgi?id=8949 +Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=684911 +Bug-Ubuntu: https://bugs.launchpad.net/bugs/1001936 + +--- xfwm4-4.8.3.orig/src/moveresize.c ++++ xfwm4-4.8.3/src/moveresize.c +@@ -617,7 +617,7 @@ clientMoveEventFilter (XEvent * xevent, + eventFilterStatus status = EVENT_FILTER_STOP; + MoveResizeData *passdata = (MoveResizeData *) data; + Client *c = NULL; +- gboolean moving = TRUE; ++ gboolean moving; + gboolean warp_pointer = FALSE; + XWindowChanges wc; + int prev_x, prev_y, delta; +@@ -631,6 +631,12 @@ clientMoveEventFilter (XEvent * xevent, + display_info = screen_info->display_info; + configure_flags = NO_CFG_FLAG; + ++ /* ++ * Clients may choose to end the move operation, ++ * we use XFWM_FLAG_MOVING_RESIZING for that. ++ */ ++ moving = FLAG_TEST (c->xfwm_flags, XFWM_FLAG_MOVING_RESIZING); ++ + /* Update the display time */ + myDisplayUpdateCurrentTime (display_info, xevent); + +@@ -1184,7 +1190,12 @@ clientResizeEventFilter (XEvent * xevent + screen_info = c->screen_info; + display_info = screen_info->display_info; + status = EVENT_FILTER_STOP; +- resizing = TRUE; ++ ++ /* ++ * Clients may choose to end the resize operation, ++ * we use XFWM_FLAG_MOVING_RESIZING for that. ++ */ ++ resizing = FLAG_TEST (c->xfwm_flags, XFWM_FLAG_MOVING_RESIZING); + + frame_x = frameX (c); + frame_y = frameY (c); +--- xfwm4-4.8.3.orig/src/netwm.c ++++ xfwm4-4.8.3/src/netwm.c +@@ -671,10 +671,15 @@ clientNetMoveResize (Client * c, XClient + resize = TRUE; /* Resize */ + break; + case NET_WM_MOVERESIZE_MOVE: +- default: + event->type = ButtonPress; + resize = FALSE; /* Move */ + break; ++ case NET_WM_MOVERESIZE_CANCEL: ++ FLAG_UNSET (c->xfwm_flags, XFWM_FLAG_MOVING_RESIZING); ++ /* Walk through */ ++ default: /* Do nothing */ ++ return; ++ break; + } + + if (!FLAG_TEST (c->flags, CLIENT_FLAG_FULLSCREEN)) +--- xfwm4-4.8.3.orig/src/display.h ++++ xfwm4-4.8.3/src/display.h +@@ -163,7 +163,8 @@ enum + NET_WM_MOVERESIZE_SIZE_LEFT, + NET_WM_MOVERESIZE_MOVE, + NET_WM_MOVERESIZE_SIZE_KEYBOARD, +- NET_WM_MOVERESIZE_MOVE_KEYBOARD ++ NET_WM_MOVERESIZE_MOVE_KEYBOARD, ++ NET_WM_MOVERESIZE_CANCEL + }; + + enum diff -Nru xfwm4-4.8.3/debian/patches/series xfwm4-4.8.3/debian/patches/series --- xfwm4-4.8.3/debian/patches/series 1970-01-01 01:00:00.000000000 +0100 +++ xfwm4-4.8.3/debian/patches/series 2012-08-15 18:12:51.000000000 +0200 @@ -0,0 +1 @@ +01_implement-NET_WM_MOVERESIZE_CANCEL-message.patch

