Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package gtk4 for openSUSE:Factory checked in 
at 2023-03-11 18:23:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gtk4 (Old)
 and      /work/SRC/openSUSE:Factory/.gtk4.new.31432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gtk4"

Sat Mar 11 18:23:08 2023 rev:54 rq:1070779 version:4.10.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/gtk4/gtk4.changes        2023-03-07 
16:49:45.945405035 +0100
+++ /work/SRC/openSUSE:Factory/.gtk4.new.31432/gtk4.changes     2023-03-11 
18:23:11.110613313 +0100
@@ -1,0 +2,14 @@
+Fri Mar 10 09:23:22 UTC 2023 - Bjørn Lie <[email protected]>
+
+- 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 <[email protected]>
+
+- Add 0001-combobox-Avoid-extra-queue_resize.patch: Fix combobox
+  not showing (bsc#1209043 glgo#GNOME/gtk!5608).
+
+-------------------------------------------------------------------

New:
----
  0001-combobox-Avoid-extra-queue_resize.patch
  3e3158ce12741b58ce53f132b48f26438094886d.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gtk4.spec ++++++
--- /var/tmp/diff_new_pack.rRPt4x/_old  2023-03-11 18:23:11.742616606 +0100
+++ /var/tmp/diff_new_pack.rRPt4x/_new  2023-03-11 18:23:11.750616648 +0100
@@ -39,6 +39,10 @@
 # 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"
 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 [email protected] -- 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
 # We do not support building against cups 2.3 betas

++++++ 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch ++++++
--- /var/tmp/diff_new_pack.rRPt4x/_old  2023-03-11 18:23:11.778616794 +0100
+++ /var/tmp/diff_new_pack.rRPt4x/_new  2023-03-11 18:23:11.782616814 +0100
@@ -13,11 +13,11 @@
  meson.build | 47 +++++++++++++++++++++++++++++++++--------------
  1 file changed, 33 insertions(+), 14 deletions(-)
 
-diff --git a/meson.build b/meson.build
-index 1b8f2d0248..4fc808dbd4 100644
---- a/meson.build
-+++ b/meson.build
-@@ -471,6 +471,9 @@ if not os_win32
+Index: gtk-4.10.0/meson.build
+===================================================================
+--- gtk-4.10.0.orig/meson.build
++++ gtk-4.10.0/meson.build
+@@ -431,6 +431,9 @@ if not os_win32
    endif
  endif
  
@@ -27,7 +27,7 @@
  cairo_backends = []
  foreach backend: [ ['cairo-xlib', cairo_req, x11_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())
  endif
  
@@ -54,7 +54,7 @@
  
    # Check whether libepoxy is built with EGL support on Windows
  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'] : []
  gtk_private_packages = pangoft2_pkgs
  
@@ -72,7 +72,7 @@
  pkg_targets = []
  display_backends = []
  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
  ]
  
@@ -102,7 +102,7 @@
    )
    meson.override_dependency(pkg, libgtk_dep)
  endforeach
-@@ -870,10 +889,10 @@ if os_unix
+@@ -835,10 +854,10 @@ if os_unix
      unescaped_variables: common_pc_variables,
      name: 'GTK',
      description: 'GTK Unix print support',
@@ -115,7 +115,4 @@
  endif
  
  subdir('po')
--- 
-2.37.1
-
 

++++++ 0001-combobox-Avoid-extra-queue_resize.patch ++++++
>From 55faea104694599298a6ca1b9f2e7a1b46bad45a Mon Sep 17 00:00:00 2001
From: Ivan Molodetskikh <[email protected]>
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


++++++ 3e3158ce12741b58ce53f132b48f26438094886d.patch ++++++
>From 9b3fb66bd4568c05f4bd10bda7f6cc1d2ed6919e Mon Sep 17 00:00:00 2001
From: Alexander Mikhaylenko <[email protected]>
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 */

Reply via email to