1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-18 19:49:40 +00:00

x11-toolkits/gtk30: update to 3.24.31

Changes:	https://gitlab.gnome.org/GNOME/gtk/-/compare/3.24.30...3.24.31
PR:		260639
Exp-run by:	antoine
Approved by:	tcberner
This commit is contained in:
Jan Beich 2021-12-20 18:29:04 +00:00
parent 723d74c807
commit 4e21a388ba
4 changed files with 6 additions and 104 deletions

View File

@ -3,8 +3,7 @@
# adwaita-icon-theme, gnome-themes-standard and mate-themes
PORTNAME= gtk
PORTVERSION= 3.24.30
PORTREVISION= 1
PORTVERSION= 3.24.31
CATEGORIES= x11-toolkits
MASTER_SITES= GNOME/sources/gtk+/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/}
PKGNAMESUFFIX= 3
@ -14,9 +13,6 @@ DIST_SUBDIR= gnome
MAINTAINER= desktop@FreeBSD.org
COMMENT= Gimp Toolkit for X11 GUI (current stable version)
EXTRA_PATCHES= ${FILESDIR}/0001-Check-if-size-changed-before-hiding-a-surface.patch:-p1 \
${FILESDIR}/0001-Ignore-wl_output-globals-not-bound-by-us.patch:-p1
LICENSE= LGPL20
PORTSCOUT= limit:1,even
@ -41,7 +37,7 @@ CONFIGURE_ARGS= --enable-introspection
CPPFLAGS+= -fno-omit-frame-pointer
INSTALL_TARGET= install-strip
LIBVERSION= 0.2404.26
LIBVERSION= 0.2404.27
PLIST_SUB+= LIBVERSION=${LIBVERSION}
GLIB_SCHEMAS= org.gtk.Demo.gschema.xml \
@ -77,8 +73,7 @@ WAYLAND_CONFIGURE_ENABLE= wayland-backend
WAYLAND_BUILD_DEPENDS= wayland-protocols>=0:graphics/wayland-protocols
WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/wayland \
libxkbcommon.so:x11/libxkbcommon
WAYLAND_RUN_DEPENDS= gsettings-desktop-schemas>=0:devel/gsettings-desktop-schemas \
wayland-protocols>=0:graphics/wayland-protocols
WAYLAND_RUN_DEPENDS= gsettings-desktop-schemas>=0:devel/gsettings-desktop-schemas
WAYLAND_USES= gl
WAYLAND_USE= GL=egl

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1625746731
SHA256 (gnome/gtk+-3.24.30.tar.xz) = ba75bfff320ad1f4cfbee92ba813ec336322cc3c660d406aad014b07087a3ba9
SIZE (gnome/gtk+-3.24.30.tar.xz) = 22407016
TIMESTAMP = 1640024944
SHA256 (gnome/gtk+-3.24.31.tar.xz) = 423c3e7fdb4c459ee889e35fd4d71fd2623562541c1041b11c07e5ad1ff10bf9
SIZE (gnome/gtk+-3.24.31.tar.xz) = 22449112

View File

@ -1,59 +0,0 @@
From 23c7e6e13bbe2c6b736e817f501dc0dd5b242787 Mon Sep 17 00:00:00 2001
From: Ronan Pigott <rpigott@berkeley.edu>
Date: Mon, 13 Sep 2021 17:14:14 -0700
Subject: [PATCH] Check if size changed before hiding a surface
Commit 68188fc948 introduces a workaround for clients that try to
change the size of a popup after it is created, but inadvertently
introduces an infinite loop of surface creation when the popup enters
two or more wl_outputs with different scales on creation.
This commit checks if the size actually changed before applying the
workaround and avoids the loop.
---
gdk/wayland/gdkwindow-wayland.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/gdk/wayland/gdkwindow-wayland.c b/gdk/wayland/gdkwindow-wayland.c
index 1e82dcae3e..5d300a94ce 100644
--- a/gdk/wayland/gdkwindow-wayland.c
+++ b/gdk/wayland/gdkwindow-wayland.c
@@ -1199,6 +1199,7 @@ gdk_wayland_window_maybe_configure (GdkWindow *window,
GdkWindowImplWayland *impl = GDK_WINDOW_IMPL_WAYLAND (window->impl);
gboolean is_xdg_popup;
gboolean is_visible;
+ gboolean size_changed;
impl->unconfigured_width = calculate_width_without_margin (window, width);
impl->unconfigured_height = calculate_height_without_margin (window, height);
@@ -1206,9 +1207,8 @@ gdk_wayland_window_maybe_configure (GdkWindow *window,
if (should_inhibit_resize (window))
return;
- if (window->width == width &&
- window->height == height &&
- impl->scale == scale)
+ size_changed = (window->width != width || window->height != height);
+ if (!size_changed && impl->scale == scale)
return;
/* For xdg_popup using an xdg_positioner, there is a race condition if
@@ -1222,6 +1222,7 @@ gdk_wayland_window_maybe_configure (GdkWindow *window,
if (is_xdg_popup &&
is_visible &&
+ size_changed &&
!impl->initial_configure_received &&
!impl->configuring_popup)
gdk_window_hide (window);
@@ -1230,6 +1231,7 @@ gdk_wayland_window_maybe_configure (GdkWindow *window,
if (is_xdg_popup &&
is_visible &&
+ size_changed &&
!impl->initial_configure_received &&
!impl->configuring_popup)
gdk_window_show (window);
--
2.33.1

View File

@ -1,34 +0,0 @@
From 9a4e32892896ce1d0a92f413845f6f7f18f9b456 Mon Sep 17 00:00:00 2001
From: Ronan Pigott <rpigott@berkeley.edu>
Date: Sat, 11 Sep 2021 17:22:12 -0700
Subject: [PATCH] Ignore wl_output globals not bound by us
Gdk doesn't know the scale of output globals it didn't bind. This
keeps them from entering the output list and triggering erroneous
changes in surface scales.
---
gdk/wayland/gdkwindow-wayland.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/gdk/wayland/gdkwindow-wayland.c b/gdk/wayland/gdkwindow-wayland.c
index 2d7c42bd7a..1e82dcae3e 100644
--- a/gdk/wayland/gdkwindow-wayland.c
+++ b/gdk/wayland/gdkwindow-wayland.c
@@ -1520,6 +1520,14 @@ surface_enter (void *data,
{
GdkWindow *window = GDK_WINDOW (data);
GdkWindowImplWayland *impl = GDK_WINDOW_IMPL_WAYLAND (window->impl);
+ GdkWaylandDisplay *display_wayland =
+ GDK_WAYLAND_DISPLAY (gdk_window_get_display (window));
+ gboolean output_is_unmanaged;
+
+ output_is_unmanaged =
+ _gdk_wayland_screen_get_output_scale (display_wayland->screen, output) == 0;
+ if (output_is_unmanaged)
+ return;
GDK_NOTE (EVENTS,
g_message ("surface enter, window %p output %p", window, output));
--
2.33.1