main/gtk+3.0: import upstream fix for invisible custom wayland surfaces

This commit is contained in:
Leo 2020-04-05 23:33:04 -03:00 committed by Ariadne Conill
parent 89fe2ae23f
commit 9973afcf46
2 changed files with 62 additions and 2 deletions

View File

@ -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"

View File

@ -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