Accepting request 1070779 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1070779 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gtk4?expand=0&rev=54
This commit is contained in:
commit
66d4782a08
@ -13,11 +13,11 @@ This reverts commit 802bf4199911c811938b0454a876089bafa97dba.
|
|||||||
meson.build | 47 +++++++++++++++++++++++++++++++++--------------
|
meson.build | 47 +++++++++++++++++++++++++++++++++--------------
|
||||||
1 file changed, 33 insertions(+), 14 deletions(-)
|
1 file changed, 33 insertions(+), 14 deletions(-)
|
||||||
|
|
||||||
diff --git a/meson.build b/meson.build
|
Index: gtk-4.10.0/meson.build
|
||||||
index 1b8f2d0248..4fc808dbd4 100644
|
===================================================================
|
||||||
--- a/meson.build
|
--- gtk-4.10.0.orig/meson.build
|
||||||
+++ b/meson.build
|
+++ gtk-4.10.0/meson.build
|
||||||
@@ -471,6 +471,9 @@ if not os_win32
|
@@ -431,6 +431,9 @@ if not os_win32
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -27,7 +27,7 @@ index 1b8f2d0248..4fc808dbd4 100644
|
|||||||
cairo_backends = []
|
cairo_backends = []
|
||||||
foreach backend: [ ['cairo-xlib', cairo_req, x11_enabled],
|
foreach backend: [ ['cairo-xlib', cairo_req, x11_enabled],
|
||||||
['cairo-win32', cairo_req, win32_enabled],
|
['cairo-win32', cairo_req, win32_enabled],
|
||||||
@@ -601,14 +604,26 @@ if x11_enabled
|
@@ -559,14 +562,26 @@ if x11_enabled
|
||||||
cdata.set('HAVE_RANDR15', xrandr15_dep.found())
|
cdata.set('HAVE_RANDR15', xrandr15_dep.found())
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -54,7 +54,7 @@ index 1b8f2d0248..4fc808dbd4 100644
|
|||||||
|
|
||||||
# Check whether libepoxy is built with EGL support on Windows
|
# Check whether libepoxy is built with EGL support on Windows
|
||||||
endif
|
endif
|
||||||
@@ -826,7 +841,16 @@ gsk_private_packages = [] # all already in gdk_private_packages
|
@@ -791,7 +806,16 @@ gsk_private_packages = [] # all already
|
||||||
pangoft2_pkgs = (wayland_enabled or x11_enabled) ? ['pangoft2'] : []
|
pangoft2_pkgs = (wayland_enabled or x11_enabled) ? ['pangoft2'] : []
|
||||||
gtk_private_packages = pangoft2_pkgs
|
gtk_private_packages = pangoft2_pkgs
|
||||||
|
|
||||||
@ -72,7 +72,7 @@ index 1b8f2d0248..4fc808dbd4 100644
|
|||||||
pkg_targets = []
|
pkg_targets = []
|
||||||
display_backends = []
|
display_backends = []
|
||||||
foreach backend: [ 'broadway', 'macos', 'wayland', 'win32', 'x11', ]
|
foreach backend: [ 'broadway', 'macos', 'wayland', 'win32', 'x11', ]
|
||||||
@@ -843,23 +867,18 @@ common_pc_variables = [
|
@@ -808,23 +832,18 @@ common_pc_variables = [
|
||||||
'gtk_host=@0@-@1@'.format(host_machine.cpu_family(), host_machine.system()), # FIXME
|
'gtk_host=@0@-@1@'.format(host_machine.cpu_family(), host_machine.system()), # FIXME
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -102,7 +102,7 @@ index 1b8f2d0248..4fc808dbd4 100644
|
|||||||
)
|
)
|
||||||
meson.override_dependency(pkg, libgtk_dep)
|
meson.override_dependency(pkg, libgtk_dep)
|
||||||
endforeach
|
endforeach
|
||||||
@@ -870,10 +889,10 @@ if os_unix
|
@@ -835,10 +854,10 @@ if os_unix
|
||||||
unescaped_variables: common_pc_variables,
|
unescaped_variables: common_pc_variables,
|
||||||
name: 'GTK',
|
name: 'GTK',
|
||||||
description: 'GTK Unix print support',
|
description: 'GTK Unix print support',
|
||||||
@ -115,6 +115,3 @@ index 1b8f2d0248..4fc808dbd4 100644
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
subdir('po')
|
subdir('po')
|
||||||
--
|
|
||||||
2.37.1
|
|
||||||
|
|
||||||
|
58
0001-combobox-Avoid-extra-queue_resize.patch
Normal file
58
0001-combobox-Avoid-extra-queue_resize.patch
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
From 55faea104694599298a6ca1b9f2e7a1b46bad45a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Ivan Molodetskikh <yalterz@gmail.com>
|
||||||
|
Date: Tue, 7 Mar 2023 09:51:32 -0800
|
||||||
|
Subject: [PATCH] combobox: Avoid extra queue_resize()
|
||||||
|
|
||||||
|
width-request already ensures it's above the minimum width, so avoid an
|
||||||
|
extra queue_resize() when setting size request to (-1, -1).
|
||||||
|
|
||||||
|
This is the same way as GtkDropDown works. This also unbreaks
|
||||||
|
GtkComboBox after the recent allocation fix in
|
||||||
|
75a417e33708dab2bdb2f784a8952e085a12bf03.
|
||||||
|
|
||||||
|
Incidentally, this also makes GtkComboBox actually resize its popup as
|
||||||
|
intended (that was broken before).
|
||||||
|
|
||||||
|
I don't think this is ultimately the final fix, sometimes I still get
|
||||||
|
allocation warnings. But the proper fix will probably involve changing
|
||||||
|
some more allocation machinery around popovers. This is good enough for
|
||||||
|
now.
|
||||||
|
---
|
||||||
|
gtk/deprecated/gtkcombobox.c | 14 ++------------
|
||||||
|
1 file changed, 2 insertions(+), 12 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/gtk/deprecated/gtkcombobox.c b/gtk/deprecated/gtkcombobox.c
|
||||||
|
index 618f0780b7..1e76b38f41 100644
|
||||||
|
--- a/gtk/deprecated/gtkcombobox.c
|
||||||
|
+++ b/gtk/deprecated/gtkcombobox.c
|
||||||
|
@@ -366,7 +366,6 @@ gtk_combo_box_size_allocate (GtkWidget *widget,
|
||||||
|
{
|
||||||
|
GtkComboBox *combo_box = GTK_COMBO_BOX (widget);
|
||||||
|
GtkComboBoxPrivate *priv = gtk_combo_box_get_instance_private (combo_box);
|
||||||
|
- int menu_width;
|
||||||
|
|
||||||
|
gtk_widget_size_allocate (priv->box,
|
||||||
|
&(GtkAllocation) {
|
||||||
|
@@ -374,17 +373,8 @@ gtk_combo_box_size_allocate (GtkWidget *widget,
|
||||||
|
width, height
|
||||||
|
}, baseline);
|
||||||
|
|
||||||
|
- gtk_widget_set_size_request (priv->popup_widget, -1, -1);
|
||||||
|
-
|
||||||
|
- if (priv->popup_fixed_width)
|
||||||
|
- gtk_widget_measure (priv->popup_widget, GTK_ORIENTATION_HORIZONTAL, -1,
|
||||||
|
- &menu_width, NULL, NULL, NULL);
|
||||||
|
- else
|
||||||
|
- gtk_widget_measure (priv->popup_widget, GTK_ORIENTATION_HORIZONTAL, -1,
|
||||||
|
- NULL, &menu_width, NULL, NULL);
|
||||||
|
-
|
||||||
|
- gtk_widget_set_size_request (priv->popup_widget,
|
||||||
|
- MAX (width, menu_width), -1);
|
||||||
|
+ gtk_widget_set_size_request (priv->popup_widget, width, -1);
|
||||||
|
+ gtk_widget_queue_resize (priv->popup_widget);
|
||||||
|
|
||||||
|
gtk_popover_present (GTK_POPOVER (priv->popup_widget));
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.39.2
|
||||||
|
|
29
3e3158ce12741b58ce53f132b48f26438094886d.patch
Normal file
29
3e3158ce12741b58ce53f132b48f26438094886d.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
From 9b3fb66bd4568c05f4bd10bda7f6cc1d2ed6919e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Alexander Mikhaylenko <alexm@gnome.org>
|
||||||
|
Date: Mon, 6 Mar 2023 05:36:16 +0400
|
||||||
|
Subject: [PATCH] widget: Use the correct template in dispose_template()
|
||||||
|
|
||||||
|
In derivable classes, the widget's class can be different from the one
|
||||||
|
dispose_template() was called for, which can lead to failing the
|
||||||
|
template != NULL check at best, undefined behavior at worst.
|
||||||
|
|
||||||
|
Since we already pass the correct GType into the function, just use that
|
||||||
|
instead.
|
||||||
|
---
|
||||||
|
gtk/gtkwidget.c | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
Index: gtk-4.10.0/gtk/gtkwidget.c
|
||||||
|
===================================================================
|
||||||
|
--- gtk-4.10.0.orig/gtk/gtkwidget.c
|
||||||
|
+++ gtk-4.10.0/gtk/gtkwidget.c
|
||||||
|
@@ -11180,7 +11180,8 @@ gtk_widget_dispose_template (GtkWidget *
|
||||||
|
g_return_if_fail (GTK_IS_WIDGET (widget));
|
||||||
|
g_return_if_fail (g_type_name (widget_type) != NULL);
|
||||||
|
|
||||||
|
- GtkWidgetTemplate *template = GTK_WIDGET_GET_CLASS (widget)->priv->template;
|
||||||
|
+ GObjectClass *object_class = g_type_class_peek (widget_type);
|
||||||
|
+ GtkWidgetTemplate *template = GTK_WIDGET_CLASS (object_class)->priv->template;
|
||||||
|
g_return_if_fail (template != NULL);
|
||||||
|
|
||||||
|
/* Tear down the automatic child data */
|
14
gtk4.changes
14
gtk4.changes
@ -1,3 +1,17 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Mar 10 09:23:22 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
|
||||||
|
|
||||||
|
- Add 3e3158ce12741b58ce53f132b48f26438094886d.patch: widget: Use
|
||||||
|
the correct template in dispose_template(). Fixes crashes in
|
||||||
|
various apps.
|
||||||
|
- Refresh patches with quilt.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Mar 9 07:36:45 UTC 2023 - Xiaoguang Wang <xiaoguang.wang@suse.com>
|
||||||
|
|
||||||
|
- Add 0001-combobox-Avoid-extra-queue_resize.patch: Fix combobox
|
||||||
|
not showing (bsc#1209043 glgo#GNOME/gtk!5608).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sun Mar 5 13:27:43 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
|
Sun Mar 5 13:27:43 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
|
||||||
|
|
||||||
|
@ -39,6 +39,10 @@ Source99: gtk4-rpmlintrc
|
|||||||
# https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4756
|
# https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4756
|
||||||
# PATCH-FIX-OPENSUSE 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch -- Revert "Meson: Simplify pkgconfig file generator"
|
# PATCH-FIX-OPENSUSE 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch -- Revert "Meson: Simplify pkgconfig file generator"
|
||||||
Patch0: 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch
|
Patch0: 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch
|
||||||
|
# PATCH-FIX-UPSTREAM 0001-combobox-Avoid-extra-queue_resize.patch bsc#1209043 glgo#GNOME/gtk!5608 xwang@suse.com -- combobox: Avoid extra queue_resize()
|
||||||
|
Patch1: 0001-combobox-Avoid-extra-queue_resize.patch
|
||||||
|
# PATCH-FIX-UPSTREAM https://gitlab.gnome.org/GNOME/gtk/-/commit/3e3158ce12741b58ce53f132b48f26438094886d.patch -- widget: Use the correct template in dispose_template()
|
||||||
|
Patch2: 3e3158ce12741b58ce53f132b48f26438094886d.patch
|
||||||
|
|
||||||
BuildRequires: cups-devel >= 2.0
|
BuildRequires: cups-devel >= 2.0
|
||||||
# We do not support building against cups 2.3 betas
|
# We do not support building against cups 2.3 betas
|
||||||
|
Loading…
x
Reference in New Issue
Block a user