diff options
author | 2012-12-31 14:44:22 +0000 | |
---|---|---|
committer | 2012-12-31 14:44:22 +0000 | |
commit | 2cd4d52fdce202d389aceb8f634cf6547117e8ef (patch) | |
tree | 95e8991ca1b8a44662c3b404ae817bae67ecc55a /xfce-base/xfwm4 | |
parent | Add ~ppc, wrt bug #449220 (diff) | |
download | gentoo-2-2cd4d52fdce202d389aceb8f634cf6547117e8ef.tar.gz gentoo-2-2cd4d52fdce202d389aceb8f634cf6547117e8ef.tar.bz2 gentoo-2-2cd4d52fdce202d389aceb8f634cf6547117e8ef.zip |
Implement NET_WM_MOVERESIZE_CANCEL message wrt bug #442218. Patch is from upstream.
(Portage version: 2.2.0_alpha149/cvs/Linux x86_64, signed Manifest commit with key 4868F14D)
Diffstat (limited to 'xfce-base/xfwm4')
-rw-r--r-- | xfce-base/xfwm4/ChangeLog | 9 | ||||
-rw-r--r-- | xfce-base/xfwm4/files/xfwm4-4.10.0-gtk34.patch | 86 | ||||
-rw-r--r-- | xfce-base/xfwm4/xfwm4-4.10.0-r1.ebuild | 55 |
3 files changed, 149 insertions, 1 deletions
diff --git a/xfce-base/xfwm4/ChangeLog b/xfce-base/xfwm4/ChangeLog index fe9f4dc6671e..315d0031c03c 100644 --- a/xfce-base/xfwm4/ChangeLog +++ b/xfce-base/xfwm4/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for xfce-base/xfwm4 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/xfce-base/xfwm4/ChangeLog,v 1.203 2012/11/28 12:29:16 ssuominen Exp $ +# $Header: /var/cvsroot/gentoo-x86/xfce-base/xfwm4/ChangeLog,v 1.204 2012/12/31 14:44:22 ssuominen Exp $ + +*xfwm4-4.10.0-r1 (31 Dec 2012) + + 31 Dec 2012; Samuli Suominen <ssuominen@gentoo.org> +xfwm4-4.10.0-r1.ebuild, + +files/xfwm4-4.10.0-gtk34.patch: + Implement NET_WM_MOVERESIZE_CANCEL message wrt bug #442218. Patch is from + upstream. 28 Nov 2012; Samuli Suominen <ssuominen@gentoo.org> xfwm4-4.10.0.ebuild: EAPI5 diff --git a/xfce-base/xfwm4/files/xfwm4-4.10.0-gtk34.patch b/xfce-base/xfwm4/files/xfwm4-4.10.0-gtk34.patch new file mode 100644 index 000000000000..c9352fdee77c --- /dev/null +++ b/xfce-base/xfwm4/files/xfwm4-4.10.0-gtk34.patch @@ -0,0 +1,86 @@ +http://bugs.gentoo.org/442218 + +From 099614e3f045e06db7ab509e174510ea74857adb Mon Sep 17 00:00:00 2001 +From: Olivier Fourdan <fourdan@xfce.org> +Date: Wed, 18 Jul 2012 20:12:07 +0000 +Subject: Implement NET_WM_MOVERESIZE_CANCEL message (bug #8949) + +as gtk+-3.4 now uses it. +--- +diff --git a/src/display.h b/src/display.h +index 1ad2ef8..8797237 100644 +--- a/src/display.h ++++ b/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 --git a/src/moveresize.c b/src/moveresize.c +index 9893c30..a98bdf7 100644 +--- a/src/moveresize.c ++++ b/src/moveresize.c +@@ -827,7 +827,7 @@ clientMoveEventFilter (XEvent * xevent, gpointer data) + eventFilterStatus status = EVENT_FILTER_STOP; + MoveResizeData *passdata = (MoveResizeData *) data; + Client *c = NULL; +- gboolean moving = TRUE; ++ gboolean moving; + XWindowChanges wc; + int prev_x, prev_y; + +@@ -840,6 +840,12 @@ clientMoveEventFilter (XEvent * xevent, gpointer data) + 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); + +@@ -1294,7 +1300,12 @@ clientResizeEventFilter (XEvent * xevent, gpointer data) + 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); +diff --git a/src/netwm.c b/src/netwm.c +index 545e64a..1352f08 100644 +--- a/src/netwm.c ++++ b/src/netwm.c +@@ -695,10 +695,15 @@ clientNetMoveResize (Client * c, XClientMessageEvent * ev) + 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)) +-- +cgit v0.9.0.3 diff --git a/xfce-base/xfwm4/xfwm4-4.10.0-r1.ebuild b/xfce-base/xfwm4/xfwm4-4.10.0-r1.ebuild new file mode 100644 index 000000000000..fe7c88d948f1 --- /dev/null +++ b/xfce-base/xfwm4/xfwm4-4.10.0-r1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/xfce-base/xfwm4/xfwm4-4.10.0-r1.ebuild,v 1.1 2012/12/31 14:44:22 ssuominen Exp $ + +EAPI=5 +inherit xfconf + +DESCRIPTION="Window manager for the Xfce desktop environment" +HOMEPAGE="http://www.xfce.org/projects/" +SRC_URI="mirror://xfce/src/xfce/${PN}/${PV%.*}/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~x86-solaris" +IUSE="debug startup-notification +xcomposite" + +RDEPEND=">=dev-libs/glib-2.20 + >=x11-libs/gtk+-2.24:2 + x11-libs/libICE + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/pango + >=x11-libs/libwnck-2.30:1 + >=xfce-base/libxfce4util-4.10 + >=xfce-base/libxfce4ui-4.10 + >=xfce-base/xfconf-4.10 + startup-notification? ( x11-libs/startup-notification ) + xcomposite? ( + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXfixes + )" +DEPEND="${RDEPEND} + dev-util/intltool + sys-devel/gettext + virtual/pkgconfig" + +pkg_setup() { + PATCHES=( "${FILESDIR}"/${P}-gtk34.patch ) + + XFCONF=( + --docdir="${EPREFIX}"/usr/share/doc/${PF} + $(use_enable startup-notification) + --enable-xsync + --enable-render + --enable-randr + $(use_enable xcomposite compositor) + $(xfconf_use_debug) + ) + + DOCS=( AUTHORS ChangeLog COMPOSITOR NEWS README TODO ) +} |