summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorjjacky2013-05-05 23:35:01 +0200
committerOlivier Brunel2015-06-08 19:22:24 +0200
commit208b6478ffde910fa0207c0553e8c95b018d64e6 (patch)
tree9f54e81e2c2b7cd35adb35baf8e5704bcb22e8b8
parent54888078ff79d77e7161a7c74985d62729c58844 (diff)
downloadaur-208b6478ffde910fa0207c0553e8c95b018d64e6.tar.gz
xfwm4-better-smartplacement: upgrade to 4.10.1
Signed-off-by: Olivier Brunel <jjk@jjacky.com>
-rw-r--r--.SRCINFO12
-rw-r--r--0001-Rewrote-smartPlacement.patch26
-rw-r--r--PKGBUILD20
-rw-r--r--xfwm4-4.10.0-implement-NET_WM_MOVERESIZE_CANCEL.patch84
4 files changed, 30 insertions, 112 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 5abf968f1ff2..3972fb8ddf24 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = xfwm4-better-smartplacement
pkgdesc = Xfce window manager w/ better smart placement of new windows
- pkgver = 4.10.0
+ pkgver = 4.10.1
pkgrel = 1
url = http://www.xfce.org/
install = xfwm4-better-smartplacement.install
@@ -13,15 +13,13 @@ pkgbase = xfwm4-better-smartplacement
depends = libxfce4ui
depends = libwnck
depends = hicolor-icon-theme
- provides = xfwm4=4.10.0
+ provides = xfwm4=4.10.1
conflicts = xfwm4
options = !libtool
- source = http://archive.xfce.org/src/xfce/xfwm4/4.10/xfwm4-4.10.0.tar.bz2
+ source = http://archive.xfce.org/src/xfce/xfwm4/4.10/xfwm4-4.10.1.tar.bz2
source = 0001-Rewrote-smartPlacement.patch
- source = xfwm4-4.10.0-implement-NET_WM_MOVERESIZE_CANCEL.patch
- sha1sums = 1549954949b5e1f38a2279a39a477b52bb5339f2
- sha1sums = a7894fd9fb0edc7b4c0149e5c6c3eb085483cff3
- sha1sums = 32dd678f8477a5b30d17641a0d75c5a54c4dca52
+ sha1sums = cbfb1beee0e952f133ef851526823b472992de1d
+ sha1sums = 9f440ac5c6a5bb0343d3a5ebb077e9aaddf2073a
pkgname = xfwm4-better-smartplacement
diff --git a/0001-Rewrote-smartPlacement.patch b/0001-Rewrote-smartPlacement.patch
index 7538abd5d2b9..8d8c8db6d1ec 100644
--- a/0001-Rewrote-smartPlacement.patch
+++ b/0001-Rewrote-smartPlacement.patch
@@ -1,4 +1,4 @@
-From 451fee0896ec21ccaaeb02f88f39becc5d06db0f Mon Sep 17 00:00:00 2001
+From dc5190f33feb7cc632279c673be827f45c6f4e75 Mon Sep 17 00:00:00 2001
From: jjacky <i.am.jack.mail@gmail.com>
Date: Fri, 5 Apr 2013 15:33:00 +0200
Subject: [PATCH] Rewrote smartPlacement()
@@ -17,14 +17,14 @@ snapper to the top/left borders, if we can we'll snap to the bottom/right ones.
Signed-off-by: jjacky <i.am.jack.mail@gmail.com>
---
- src/placement.c | 341 +++++++++++++++++++++++++++++++++++++++++++++++---------
- 1 file changed, 288 insertions(+), 53 deletions(-)
+ src/placement.c | 345 ++++++++++++++++++++++++++++++++++++++++++++++----------
+ 1 file changed, 288 insertions(+), 57 deletions(-)
diff --git a/src/placement.c b/src/placement.c
-index 248d339..b4423cc 100644
+index 01f2590..57277c1 100644
--- a/src/placement.c
+++ b/src/placement.c
-@@ -532,15 +532,139 @@ clientAutoMaximize (Client * c, int full_w, int full_h)
+@@ -533,16 +533,139 @@ clientAutoMaximize (Client * c, int full_w, int full_h)
}
static void
@@ -163,13 +163,14 @@ index 248d339..b4423cc 100644
- gint test_x, test_y, xmax, ymax, best_x, best_y;
gint frame_height, frame_width, frame_left, frame_top;
- gboolean first;
+- gint c2_x, c2_y;
+ cairo_region_t *region_monitor, *region_used, *region_hole, *region_tmp;
+ cairo_rectangle_int_t rect;
+ GList *list;
g_return_if_fail (c != NULL);
TRACE ("entering smartPlacement");
-@@ -550,67 +674,178 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h)
+@@ -552,70 +675,178 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h)
frame_width = frameWidth (c);
frame_left = frameLeft(c);
frame_top = frameTop (c);
@@ -234,14 +235,17 @@ index 248d339..b4423cc 100644
+ break;
+ case CAIRO_REGION_OVERLAP_PART:
{
+- c2_x = frameX (c2);
+- c2_y = frameY (c2);
+-
- count_overlaps += overlap (test_x - frame_left,
- test_y - frame_top,
- test_x - frame_left + frame_width,
- test_y - frame_top + frame_height,
-- frameX (c2),
-- frameY (c2),
-- frameX (c2) + frameWidth (c2),
-- frameY (c2) + frameHeight (c2));
+- c2_x,
+- c2_y,
+- c2_x + frameWidth (c2),
+- c2_y + frameHeight (c2));
+ /* get only the part of the window on our monitor */
+ region_tmp = cairo_region_copy (region_monitor);
+ cairo_region_intersect_rectangle (region_tmp, &rect);
@@ -397,5 +401,5 @@ index 248d339..b4423cc 100644
static void
--
-1.8.2
+1.8.2.2
diff --git a/PKGBUILD b/PKGBUILD
index 342b62cd515b..fd981f2137e6 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,7 +4,7 @@
_pkgname=xfwm4
pkgname=$_pkgname-better-smartplacement
-pkgver=4.10.0
+pkgver=4.10.1
pkgrel=1
pkgdesc="Xfce window manager w/ better smart placement of new windows"
arch=('i686' 'x86_64')
@@ -14,21 +14,21 @@ groups=('xfce4')
depends=("libxfce4ui" 'libwnck' 'hicolor-icon-theme')
makedepends=('pkgconfig' 'intltool')
options=('!libtool')
-provides=('xfwm4=4.10.0')
+provides=('xfwm4=4.10.1')
conflicts=('xfwm4')
install=${pkgname}.install
source=(http://archive.xfce.org/src/xfce/${_pkgname}/4.10/${_pkgname}-${pkgver}.tar.bz2
- 0001-Rewrote-smartPlacement.patch
- xfwm4-4.10.0-implement-NET_WM_MOVERESIZE_CANCEL.patch)
-sha1sums=('1549954949b5e1f38a2279a39a477b52bb5339f2'
- 'a7894fd9fb0edc7b4c0149e5c6c3eb085483cff3'
- '32dd678f8477a5b30d17641a0d75c5a54c4dca52')
+ 0001-Rewrote-smartPlacement.patch)
+sha1sums=('cbfb1beee0e952f133ef851526823b472992de1d'
+ '9f440ac5c6a5bb0343d3a5ebb077e9aaddf2073a')
-build() {
+prepare() {
cd ${srcdir}/${_pkgname}-${pkgver}
patch -p1 -i ../0001-Rewrote-smartPlacement.patch
- # fixes https://bugzilla.xfce.org/show_bug.cgi?id=8949
- patch -Np1 -i ../xfwm4-4.10.0-implement-NET_WM_MOVERESIZE_CANCEL.patch
+}
+
+build() {
+ cd ${srcdir}/${_pkgname}-${pkgver}
./configure --prefix=/usr \
--sysconfdir=/etc \
--libexecdir=/usr/lib \
diff --git a/xfwm4-4.10.0-implement-NET_WM_MOVERESIZE_CANCEL.patch b/xfwm4-4.10.0-implement-NET_WM_MOVERESIZE_CANCEL.patch
deleted file mode 100644
index f141ed646ac4..000000000000
--- a/xfwm4-4.10.0-implement-NET_WM_MOVERESIZE_CANCEL.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-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