summaryrefslogtreecommitdiff
path: root/xfce-base/xfwm4
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2021-12-05 02:47:11 +0000
committerV3n3RiX <venerix@koprulu.sector>2021-12-05 02:47:11 +0000
commit2771f79232c273bc2a57d23bf335dd81ccf6af28 (patch)
treec8af0fd04194aed03cf067d44e53c7edd3e9ab84 /xfce-base/xfwm4
parente9d044d4b9b71200a96adfa280848858c0f468c9 (diff)
gentoo resync : 05.12.2021
Diffstat (limited to 'xfce-base/xfwm4')
-rw-r--r--xfce-base/xfwm4/Manifest3
-rw-r--r--xfce-base/xfwm4/files/xfwm4-4.16.1-gtk_frame_extents.patch56
-rw-r--r--xfce-base/xfwm4/xfwm4-4.16.1-r1.ebuild (renamed from xfce-base/xfwm4/xfwm4-4.16.1.ebuild)4
3 files changed, 62 insertions, 1 deletions
diff --git a/xfce-base/xfwm4/Manifest b/xfce-base/xfwm4/Manifest
index 11f6702362d9..5bc271b46a29 100644
--- a/xfce-base/xfwm4/Manifest
+++ b/xfce-base/xfwm4/Manifest
@@ -1,3 +1,4 @@
+AUX xfwm4-4.16.1-gtk_frame_extents.patch 1787 BLAKE2B 17863b299e58f4e9443084997af55f197cd40101b4d3e109a3cd6da5843b23791a448d1efb99a3995ccdd53e5123bb901509e89b6480a0e6aa97fa404046b565 SHA512 2ec542092ee86047280b4d5c46f09aad71434828bd9af2f8940a9ab208c861377ba619da0fdff4ac0f8e69fb17759c7b886732db7406a738e00b6323c25e1ea5
DIST xfwm4-4.16.1.tar.bz2 1201722 BLAKE2B 4aae9b97095b423964a2ece7fe09b46ecfcea6688af6ab3b38ee34611cd68a7427597cb963b91b209d161c85aed552df15d005268bd8585d365b0cf63adf36b3 SHA512 f0d5d00e58202457d0d7d5f9772e7b2aa3f3339850065609baab7d379248a628d147464cc605698970134b87d58b7867b8c09d0a3a45ab84b2f3aa95be26f0b9
-EBUILD xfwm4-4.16.1.ebuild 1633 BLAKE2B 8a85039c4fc72d10912186f192c7d5330cf2cd616510c9f98fc22d104ede073d19da1b4df67f26e9e7a0dbb0d5a04190a0cd4ba681b9623a9e48c743012c040f SHA512 8ae10bef80a8e96a8486cf79842ae30cde6f1be7a6a01a62ea57292751b2bc4527882ecafce39446863df3b30aecb198af89f48a41827b4fa65f546ec282f72d
+EBUILD xfwm4-4.16.1-r1.ebuild 1703 BLAKE2B 597f70a6be5a8801ba7ea0404fb2e7afd6bd6e0184738e198ea96e2794bccbcd1f1d46fc4247ae1db79995990481670c3897dc46417b44c13c866dabde47d840 SHA512 30d949bd7ee402fbac1b180950a0a251b1fc87576742ef2b5abddb6b99885401ee9f86265818583caaf434783d51f84a335c31ccb8da2e685c0b439ecb7cf31f
MISC metadata.xml 337 BLAKE2B e51dd05bbb1b2959c65a70a2d16fb8cf627045ab1abcae5838b013d7edb4d5bd5f79a70f3ae31ebd5c326c13ac2e48909621676af8b38e05df8e6f2e0e80e4fc SHA512 cd7a8c5cf84729ca130cee2f33b5358f8f7edd99ca321b7331f43a5e4e5016b2f664ba88230b7dbbddd2298b2ac846c144df87baa43b88426849d55a8f9a7dca
diff --git a/xfce-base/xfwm4/files/xfwm4-4.16.1-gtk_frame_extents.patch b/xfce-base/xfwm4/files/xfwm4-4.16.1-gtk_frame_extents.patch
new file mode 100644
index 000000000000..bb170d836b7f
--- /dev/null
+++ b/xfce-base/xfwm4/files/xfwm4-4.16.1-gtk_frame_extents.patch
@@ -0,0 +1,56 @@
+From 488288f6e35d5d3dc077e87fe2ed83129692f62e Mon Sep 17 00:00:00 2001
+From: Olivier Fourdan <fourdan@xfce.org>
+Date: Sun, 14 Nov 2021 11:00:55 +0100
+Subject: [PATCH] client: Handle removal of GTK_FRAME_EXTENTS
+
+Chromium and GOOGLE Chrome have now support for GTK_FRAME_EXTENTS.
+
+When maximizing a window, Chromium/Chrome simply removes the property
+on its toplevel rather than setting all values to 0.
+
+xfwm4 would simply ignore the property change because it could not read
+the values and therefore apply the old, wrong values.
+
+Fix xfwm4 to handle the property removal like an actual property change
+to 0.
+
+Signed-off-by: Olivier Fourdan <fourdan@xfce.org>
+Closes: https://gitlab.xfce.org/xfce/xfwm4/-/issues/603
+---
+ src/client.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/client.c b/src/client.c
+index 4e6affcfd..310cf90aa 100644
+--- a/src/client.c
++++ b/src/client.c
+@@ -4200,6 +4200,7 @@ clientGetGtkFrameExtents (Client * c)
+ DisplayInfo *display_info;
+ gboolean value_changed = FALSE;
+ gulong *extents;
++ unsigned long old_value;
+ int nitems;
+ int i;
+
+@@ -4209,6 +4210,8 @@ clientGetGtkFrameExtents (Client * c)
+ screen_info = c->screen_info;
+ display_info = screen_info->display_info;
+ extents = NULL;
++
++ old_value = FLAG_TEST (c->flags, CLIENT_FLAG_HAS_FRAME_EXTENTS);
+ FLAG_UNSET (c->flags, CLIENT_FLAG_HAS_FRAME_EXTENTS);
+
+ if (getCardinalList (display_info, c->window, GTK_FRAME_EXTENTS, &extents, &nitems))
+@@ -4232,6 +4235,9 @@ clientGetGtkFrameExtents (Client * c)
+ XFree (extents);
+ }
+
++ /* Adding or removing the property also counts as a change */
++ value_changed |= (old_value ^ FLAG_TEST (c->flags, CLIENT_FLAG_HAS_FRAME_EXTENTS));
++
+ return value_changed;
+ }
+
+--
+2.32.0
+
diff --git a/xfce-base/xfwm4/xfwm4-4.16.1.ebuild b/xfce-base/xfwm4/xfwm4-4.16.1-r1.ebuild
index e32d02171cb1..874b0ee69112 100644
--- a/xfce-base/xfwm4/xfwm4-4.16.1.ebuild
+++ b/xfce-base/xfwm4/xfwm4-4.16.1-r1.ebuild
@@ -46,6 +46,10 @@ BDEPEND="
sys-devel/gettext
virtual/pkgconfig"
+PATCHES=(
+ "${FILESDIR}/${P}-gtk_frame_extents.patch" # bug 819771
+)
+
src_configure() {
local myconf=(
$(use_enable opengl epoxy)