aboutsummaryrefslogtreecommitdiffstats
path: root/main/gtk+3.0
diff options
context:
space:
mode:
authorLeo <thinkabit.ukim@gmail.com>2020-04-05 23:33:04 -0300
committerAriadne Conill <ariadne@dereferenced.org>2020-04-06 02:35:16 +0000
commit9973afcf46cdc3bb32e8fce04a78dc332fc6b2ef (patch)
tree465d19d87af67874d1a5edf4499781a5921bfbb1 /main/gtk+3.0
parent89fe2ae23f1eb6969a4d2caba51bfdff110e5693 (diff)
downloadaports-9973afcf46cdc3bb32e8fce04a78dc332fc6b2ef.tar.bz2
aports-9973afcf46cdc3bb32e8fce04a78dc332fc6b2ef.tar.xz
main/gtk+3.0: import upstream fix for invisible custom wayland surfaces
Diffstat (limited to 'main/gtk+3.0')
-rw-r--r--main/gtk+3.0/APKBUILD6
-rw-r--r--main/gtk+3.0/fix-invisible-wayland-surfaces.patch58
2 files changed, 62 insertions, 2 deletions
diff --git a/main/gtk+3.0/APKBUILD b/main/gtk+3.0/APKBUILD
index 4a7aa6d592..72a4a1e672 100644
--- a/main/gtk+3.0/APKBUILD
+++ b/main/gtk+3.0/APKBUILD
@@ -3,7 +3,7 @@
# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
pkgname=gtk+3.0
pkgver=3.24.17
-pkgrel=0
+pkgrel=1
pkgdesc="The GTK+ Toolkit (v3)"
url="https://www.gtk.org/"
install="$pkgname.post-install $pkgname.post-upgrade $pkgname.post-deinstall"
@@ -61,6 +61,7 @@ checkdepends="
"
source="https://download.gnome.org/sources/gtk+/${pkgver%.*}/gtk+-$pkgver.tar.xz
10-Revert-gdkseatdefault-Grab-touch-events-where-applic.patch
+ fix-invisible-wayland-surfaces.patch
"
@@ -120,4 +121,5 @@ doc() {
}
sha512sums="42a0f8c3d64f9354f3954a8ecd8955abcf23cac4b9f433daef153b77c2e3abfbdd16231432bf6907d86c57e33d0f22c771685cb83b299a0883dfd3245372df1e gtk+-3.24.17.tar.xz
-e4ea76484b70bd9beb65b2964bbcff3b3f78f5f6fe70b12309a7721ca134e3735e8aaac09803f93b393a6130a703f8f346c0df89ad45d18c580dac1e0e922276 10-Revert-gdkseatdefault-Grab-touch-events-where-applic.patch"
+e4ea76484b70bd9beb65b2964bbcff3b3f78f5f6fe70b12309a7721ca134e3735e8aaac09803f93b393a6130a703f8f346c0df89ad45d18c580dac1e0e922276 10-Revert-gdkseatdefault-Grab-touch-events-where-applic.patch
+0996759b638db09e8fef4fcb2de542ba7ec77210d0062bc507e3eb733ce28a64b6829cf86b71aee0aa7cc61ce75b927fba181b7063aaa089ca50572c8eb363f3 fix-invisible-wayland-surfaces.patch"
diff --git a/main/gtk+3.0/fix-invisible-wayland-surfaces.patch b/main/gtk+3.0/fix-invisible-wayland-surfaces.patch
new file mode 100644
index 0000000000..40a2f16c57
--- /dev/null
+++ b/main/gtk+3.0/fix-invisible-wayland-surfaces.patch
@@ -0,0 +1,58 @@
+From 12fc9a45efcbb546eb7de13c5c4d3183f2f5a3b8 Mon Sep 17 00:00:00 2001
+From: William Wold <wm@wmww.sh>
+Date: Sun, 5 Apr 2020 05:26:24 -0400
+Subject: [PATCH 1/2] Do not require an initial configure for custom Wayland
+ surfaces
+
+There is no way for custom Wayland surfaces to get configure events, so an
+initial configure event should not be required to resize a custom surface.
+
+Fixes #2578.
+---
+ gdk/wayland/gdkwindow-wayland.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/gdk/wayland/gdkwindow-wayland.c b/gdk/wayland/gdkwindow-wayland.c
+index eba8361b21..5f39c5771c 100644
+--- a/gdk/wayland/gdkwindow-wayland.c
++++ b/gdk/wayland/gdkwindow-wayland.c
+@@ -1087,6 +1087,8 @@ needs_initial_configure (GdkWindow *window)
+
+ if (impl->display_server.wl_subsurface)
+ return FALSE;
++ else if (impl->use_custom_surface)
++ return FALSE;
+ else if (is_realized_toplevel (window))
+ return TRUE;
+ else if (is_realized_popup (window))
+--
+2.24.1
+
+
+From 5a52af20cba76474e631b2a7548963bcad22d66d Mon Sep 17 00:00:00 2001
+From: William Wold <wm@wmww.sh>
+Date: Sun, 5 Apr 2020 07:11:45 -0400
+Subject: [PATCH 2/2] Do not require an initial configure for DnD windows
+
+Fixes #2075
+---
+ gdk/wayland/gdkwindow-wayland.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/gdk/wayland/gdkwindow-wayland.c b/gdk/wayland/gdkwindow-wayland.c
+index 5f39c5771c..04506508f3 100644
+--- a/gdk/wayland/gdkwindow-wayland.c
++++ b/gdk/wayland/gdkwindow-wayland.c
+@@ -1089,6 +1089,8 @@ needs_initial_configure (GdkWindow *window)
+ return FALSE;
+ else if (impl->use_custom_surface)
+ return FALSE;
++ else if (impl->hint == GDK_WINDOW_TYPE_HINT_DND)
++ return FALSE;
+ else if (is_realized_toplevel (window))
+ return TRUE;
+ else if (is_realized_popup (window))
+--
+2.24.1
+
+