diff options
author | Olivier Brunel | 2015-03-15 14:19:46 +0100 |
---|---|---|
committer | Olivier Brunel | 2015-06-08 19:22:25 +0200 |
commit | a3730d8f7772357f169507a4cb3f6d9eca0b8ef1 (patch) | |
tree | 274c480490125daf24577af00862c80b75241f11 | |
parent | ebe48535f26b7948f3abca226263752e4919be7a (diff) | |
download | aur-a3730d8f7772357f169507a4cb3f6d9eca0b8ef1.tar.gz |
xfwm4-better-smartplacement: upgrade to 4.12.1
Signed-off-by: Olivier Brunel <jjk@jjacky.com>
-rw-r--r-- | .SRCINFO | 16 | ||||
-rw-r--r-- | 0001-Fix-a-mishmash-between-width-and-height.patch | 37 | ||||
-rw-r--r-- | 0001-Rewrote-smartPlacement.patch | 30 | ||||
-rw-r--r-- | 0002-smartPlacement-w-snap_to_border-we-snap-to-bottom-ri.patch | 18 | ||||
-rw-r--r-- | 0003-Fix-new-window-always-top-left-when-screen-not-full.patch | 10 | ||||
-rw-r--r-- | PKGBUILD | 15 |
6 files changed, 83 insertions, 43 deletions
@@ -1,7 +1,7 @@ pkgbase = xfwm4-better-smartplacement pkgdesc = Xfce window manager w/ better smart placement of new windows - pkgver = 4.12.0 - pkgrel = 2 + pkgver = 4.12.1 + pkgrel = 1 url = http://www.xfce.org/ install = xfwm4-better-smartplacement.install arch = i686 @@ -16,14 +16,16 @@ pkgbase = xfwm4-better-smartplacement provides = xfwm4 conflicts = xfwm4 options = !libtool - source = http://archive.xfce.org/src/xfce/xfwm4/4.12/xfwm4-4.12.0.tar.bz2 + source = http://archive.xfce.org/src/xfce/xfwm4/4.12/xfwm4-4.12.1.tar.bz2 + source = 0001-Fix-a-mishmash-between-width-and-height.patch source = 0001-Rewrote-smartPlacement.patch source = 0002-smartPlacement-w-snap_to_border-we-snap-to-bottom-ri.patch source = 0003-Fix-new-window-always-top-left-when-screen-not-full.patch - sha1sums = 5c3ea9faaa9b45a40ca7ecfff447cdca192534f6 - sha1sums = 14c407c8734add318b7b0f0a9b86bcaf6a210b81 - sha1sums = 4cb167d59c1ad0776aa9a53cafafd0168ede5cc9 - sha1sums = 89f5b54d7370db86c7547580a6d1376cb88980fa + sha1sums = e7470b69bba29c9c0e0bcd1471e80b73c6ccfd91 + sha1sums = 2fc881cf4fbdbd7c6f55eb5d4900dc133516ee14 + sha1sums = ea46b6b9561bdd2e4f5225b4aeed811b2ed5d890 + sha1sums = e179b132c8da76a6b75e51bb7364e19ba9ecf7de + sha1sums = 9356911cd08c9703f356c0b7993a6392302dbcad pkgname = xfwm4-better-smartplacement diff --git a/0001-Fix-a-mishmash-between-width-and-height.patch b/0001-Fix-a-mishmash-between-width-and-height.patch new file mode 100644 index 000000000000..1cb314cab421 --- /dev/null +++ b/0001-Fix-a-mishmash-between-width-and-height.patch @@ -0,0 +1,37 @@ +From adcf17fe8a136c89196f952185056c12c3829a01 Mon Sep 17 00:00:00 2001 +From: Olivier Fourdan <fourdan@xfce.org> +Date: Sun, 15 Mar 2015 11:24:15 +0100 +Subject: [PATCH] Fix a mishmash between width and height + +Bug: 11700 + +Duh... + +Signed-off-by: Olivier Fourdan <fourdan@xfce.org> +--- + src/client.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/client.c b/src/client.c +index 7fa9e36..38ecc6f 100644 +--- a/src/client.c ++++ b/src/client.c +@@ -543,12 +543,12 @@ clientAdjustCoordGravity (Client *c, int gravity, XWindowChanges *wc, unsigned l + + if (*mask & CWWidth) + { +- wc->width = clientCheckHeight (c, wc->width, TRUE); ++ wc->width = clientCheckWidth (c, wc->width, TRUE); + } + +- if (*mask & CWWidth) ++ if (*mask & CWHeight) + { +- wc->height = clientCheckWidth (c, wc->height, TRUE); ++ wc->height = clientCheckHeight (c, wc->height, TRUE); + } + + switch (gravity) +-- +2.3.3 + diff --git a/0001-Rewrote-smartPlacement.patch b/0001-Rewrote-smartPlacement.patch index 822ed226e97d..a0afb151a85d 100644 --- a/0001-Rewrote-smartPlacement.patch +++ b/0001-Rewrote-smartPlacement.patch @@ -1,4 +1,4 @@ -From ada426d2da8750421456ba51aa4c60be69a2fc3e Mon Sep 17 00:00:00 2001 +From 0f5d1078f3f903c7bc87c5c37a16a68cd2fd3825 Mon Sep 17 00:00:00 2001 From: Olivier Brunel <jjk@jjacky.com> Date: Sun, 8 Mar 2015 13:22:12 +0100 Subject: [PATCH 1/3] Rewrote smartPlacement() @@ -13,14 +13,14 @@ window the lowest on stack, i.e. the last one to be activated/(fully) visible. Signed-off-by: Olivier Brunel <jjk@jjacky.com> --- - src/placement.c | 418 ++++++++++++++++++++++++++++++++++++-------------------- - 1 file changed, 272 insertions(+), 146 deletions(-) + src/placement.c | 414 ++++++++++++++++++++++++++++++++++++-------------------- + 1 file changed, 270 insertions(+), 144 deletions(-) diff --git a/src/placement.c b/src/placement.c -index cae55ac..aba284f 100644 +index 7b0ca22..a8e9c70 100644 --- a/src/placement.c +++ b/src/placement.c -@@ -555,16 +555,139 @@ clientAutoMaximize (Client * c, int full_w, int full_h) +@@ -552,16 +552,139 @@ clientAutoMaximize (Client * c, int full_w, int full_h) } static void @@ -166,7 +166,7 @@ index cae55ac..aba284f 100644 g_return_if_fail (c != NULL); TRACE ("entering smartPlacement"); -@@ -575,165 +698,168 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) +@@ -572,165 +695,168 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) frame_left = frameExtentLeft(c); frame_top = frameExtentTop (c); @@ -202,11 +202,6 @@ index cae55ac..aba284f 100644 { - gint next_test_y = G_MAXINT; - gboolean first_test_x = TRUE; -- -- TRACE ("testing y position %d", test_y); -- -- test_x = xmin; -- do + Client *c2 = list->data; + gint i, n; + gboolean done; @@ -216,13 +211,16 @@ index cae55ac..aba284f 100644 + + if (!clientSelectMask (c2, NULL, SEARCH_INCLUDE_SKIP_PAGER | SEARCH_INCLUDE_SKIP_TASKBAR, WINDOW_REGULAR_FOCUSABLE)) + continue; -+ + +- TRACE ("testing y position %d", test_y); + /* rectangle for the window */ + rect.x = frameExtentX (c2); + rect.y = frameExtentY (c2); + rect.width = frameExtentWidth (c2); + rect.height = frameExtentHeight (c2); -+ + +- test_x = xmin; +- do + switch (cairo_region_contains_rectangle (region_monitor, &rect)) { - gfloat count_overlaps = 0.0; @@ -415,7 +413,7 @@ index cae55ac..aba284f 100644 + exp_y = rect.y; } - } -- while (test_x < xmax); +- while (test_x <= xmax); - if (G_LIKELY (next_test_y != G_MAXINT)) - { @@ -454,7 +452,7 @@ index cae55ac..aba284f 100644 + c->y -= n; } - } -- while (test_y < ymax); +- while (test_y <= ymax); - found_best: + /* add frames */ @@ -476,5 +474,5 @@ index cae55ac..aba284f 100644 static void -- -2.3.1 +2.3.3 diff --git a/0002-smartPlacement-w-snap_to_border-we-snap-to-bottom-ri.patch b/0002-smartPlacement-w-snap_to_border-we-snap-to-bottom-ri.patch index 1547fadd859d..8929961a55ef 100644 --- a/0002-smartPlacement-w-snap_to_border-we-snap-to-bottom-ri.patch +++ b/0002-smartPlacement-w-snap_to_border-we-snap-to-bottom-ri.patch @@ -1,4 +1,4 @@ -From 765202c0b22e39b408338756f709d5aa317a5ab0 Mon Sep 17 00:00:00 2001 +From d86b58c2ca82e10394d274bb5797bfa859e90de5 Mon Sep 17 00:00:00 2001 From: jjacky <i.am.jack.mail@gmail.com> Date: Fri, 5 Apr 2013 15:22:11 +0200 Subject: [PATCH 2/3] smartPlacement: w/ snap_to_border we snap to bottom/right @@ -13,10 +13,10 @@ Signed-off-by: Olivier Brunel <jjk@jjacky.com> 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/src/placement.c b/src/placement.c -index aba284f..f9757cc 100644 +index a8e9c70..14969ec 100644 --- a/src/placement.c +++ b/src/placement.c -@@ -714,7 +714,7 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) +@@ -711,7 +711,7 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) Client *c2 = list->data; gint i, n; gboolean done; @@ -25,7 +25,7 @@ index aba284f..f9757cc 100644 gdouble best_surface = 0; gboolean can_window_fit = FALSE; -@@ -786,7 +786,7 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) +@@ -783,7 +783,7 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) for (i = 0; i < n; ++i) { cairo_rectangle_int_t r; @@ -34,7 +34,7 @@ index aba284f..f9757cc 100644 gdouble exp_surface; gboolean exp_can_window_fit; gdouble surface; -@@ -797,10 +797,9 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) +@@ -794,10 +794,9 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) /* expand horizontally, then vertically */ expand_horizontal (region_hole, &rect, full_x, full_y, full_w, full_h); expand_vertical (region_hole, &rect, full_x, full_y, full_w, full_h); @@ -48,7 +48,7 @@ index aba284f..f9757cc 100644 /* expand vertically, then horizontally */ expand_vertical (region_hole, &rect, full_x, full_y, full_w, full_h); -@@ -814,9 +813,8 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) +@@ -811,9 +810,8 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) || (exp_can_window_fit && can_fit && surface < exp_surface)) { exp_can_window_fit = can_fit; @@ -59,7 +59,7 @@ index aba284f..f9757cc 100644 } /* is this the new best result ? (same criteria) */ -@@ -825,15 +823,14 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) +@@ -822,15 +820,14 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) || (can_window_fit && exp_can_window_fit && exp_surface < best_surface)) { can_window_fit = exp_can_window_fit; @@ -78,7 +78,7 @@ index aba284f..f9757cc 100644 /* unless it could fit, make sure it's fully within monitor */ if (!can_window_fit) -@@ -848,6 +845,18 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) +@@ -845,6 +842,18 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) c->y -= n; } @@ -98,5 +98,5 @@ index aba284f..f9757cc 100644 c->x += frame_left; c->y += frame_top; -- -2.3.1 +2.3.3 diff --git a/0003-Fix-new-window-always-top-left-when-screen-not-full.patch b/0003-Fix-new-window-always-top-left-when-screen-not-full.patch index 75e5713bd0e8..18ad8129db5e 100644 --- a/0003-Fix-new-window-always-top-left-when-screen-not-full.patch +++ b/0003-Fix-new-window-always-top-left-when-screen-not-full.patch @@ -1,4 +1,4 @@ -From af8f2eb1f25d2ca467fe941aeed111a743fce7cc Mon Sep 17 00:00:00 2001 +From 68c37fbcd533ff2307c82f3b48bb090d9bbbd433 Mon Sep 17 00:00:00 2001 From: jjacky <i.am.jack.mail@gmail.com> Date: Mon, 6 May 2013 11:00:51 +0200 Subject: [PATCH 3/3] Fix new window always top-left when screen not full @@ -14,10 +14,10 @@ Signed-off-by: Olivier Brunel <jjk@jjacky.com> 1 file changed, 4 insertions(+) diff --git a/src/placement.c b/src/placement.c -index f9757cc..f57493f 100644 +index 14969ec..a595f67 100644 --- a/src/placement.c +++ b/src/placement.c -@@ -779,6 +779,7 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) +@@ -776,6 +776,7 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) if (!region_hole) break; @@ -25,7 +25,7 @@ index f9757cc..f57493f 100644 cairo_region_destroy (region_monitor); cairo_region_destroy (region_used); -@@ -864,6 +865,9 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) +@@ -861,6 +862,9 @@ smartPlacement (Client * c, int full_x, int full_y, int full_w, int full_h) return; } @@ -36,5 +36,5 @@ index f9757cc..f57493f 100644 cairo_region_destroy (region_used); -- -2.3.1 +2.3.3 @@ -4,8 +4,8 @@ _pkgname=xfwm4 pkgname=$_pkgname-better-smartplacement -pkgver=4.12.0 -pkgrel=2 +pkgver=4.12.1 +pkgrel=1 pkgdesc="Xfce window manager w/ better smart placement of new windows" arch=('i686' 'x86_64') license=('GPL2') @@ -18,16 +18,19 @@ provides=($_pkgname) conflicts=($_pkgname) install=${pkgname}.install source=(http://archive.xfce.org/src/xfce/${_pkgname}/4.12/${_pkgname}-${pkgver}.tar.bz2 + 0001-Fix-a-mishmash-between-width-and-height.patch 0001-Rewrote-smartPlacement.patch 0002-smartPlacement-w-snap_to_border-we-snap-to-bottom-ri.patch 0003-Fix-new-window-always-top-left-when-screen-not-full.patch) -sha1sums=('5c3ea9faaa9b45a40ca7ecfff447cdca192534f6' - '14c407c8734add318b7b0f0a9b86bcaf6a210b81' - '4cb167d59c1ad0776aa9a53cafafd0168ede5cc9' - '89f5b54d7370db86c7547580a6d1376cb88980fa') +sha1sums=('e7470b69bba29c9c0e0bcd1471e80b73c6ccfd91' + '2fc881cf4fbdbd7c6f55eb5d4900dc133516ee14' + 'ea46b6b9561bdd2e4f5225b4aeed811b2ed5d890' + 'e179b132c8da76a6b75e51bb7364e19ba9ecf7de' + '9356911cd08c9703f356c0b7993a6392302dbcad') prepare() { cd ${srcdir}/${_pkgname}-${pkgver} + patch -p1 -i ../0001-Fix-a-mishmash-between-width-and-height.patch patch -p1 -i ../0001-Rewrote-smartPlacement.patch patch -p1 -i ../0002-smartPlacement-w-snap_to_border-we-snap-to-bottom-ri.patch patch -p1 -i ../0003-Fix-new-window-always-top-left-when-screen-not-full.patch |