Hello community,

here is the log from the commit of package gtk3 for openSUSE:Factory checked in 
at 2016-11-04 20:50:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gtk3 (Old)
 and      /work/SRC/openSUSE:Factory/.gtk3.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gtk3"

Changes:
--------
--- /work/SRC/openSUSE:Factory/gtk3/gtk3.changes        2016-10-10 
17:34:50.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.gtk3.new/gtk3.changes   2016-11-04 
20:50:48.000000000 +0100
@@ -1,0 +2,19 @@
+Tue Nov  1 10:07:53 UTC 2016 - [email protected]
+
+- Add gtk3-startupfix-wayland.patch: Fix slow startup notification
+  for some gtk3 apps when running on wayland (bgo#768531).
+
+-------------------------------------------------------------------
+Mon Oct 24 10:45:05 UTC 2016 - [email protected]
+
+- Update to version 3.22.2:
+  + Several improvements to the win32 theme.
+  + Deprecations have been added for APIs that will be removed in
+    GTK+ 4.
+  + Bugs fixed: bgo#767713, bgo#771320, bgo#772345, bgo#772389,
+    bgo#772415, bgo#772552, bgo#772683, bgo#772695, bgo#772775,
+    bgo#772859, bgo#772922, bgo#772926, bgo#773029, bgo#773082,
+    bgo#773113, bgo#773180, bgo#773246.
+  + Updated translations.
+
+-------------------------------------------------------------------

Old:
----
  gtk+-3.22.1.tar.xz

New:
----
  gtk+-3.22.2.tar.xz
  gtk3-startupfix-wayland.patch

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

Other differences:
------------------
++++++ gtk3.spec ++++++
--- /var/tmp/diff_new_pack.gpnhoX/_old  2016-11-04 20:50:50.000000000 +0100
+++ /var/tmp/diff_new_pack.gpnhoX/_new  2016-11-04 20:50:50.000000000 +0100
@@ -29,7 +29,7 @@
 
 Name:           gtk3
 %define _name gtk+
-Version:        3.22.1
+Version:        3.22.2
 Release:        0
 Summary:        The GTK+ toolkit library (version 3)
 License:        LGPL-2.1+
@@ -44,6 +44,8 @@
 Patch0:         gtk3-GTK_PATH64.patch
 # PATCH-NEEDS-REBASE gtk3-path-local.patch Search in /usr/local/%{_lib} by 
default. bnc369696 bgo534474 -- Was PATCH-FIX-OPENSUSE
 Patch1:         gtk3-path-local.patch
+# PATCH-FIX-UPSTREAM gtk3-startupfix-wayland.patch bgo#768531 
[email protected] -- Fix slow startup notification on wayland
+Patch2:         gtk3-startupfix-wayland.patch
 BuildRequires:  cups-devel >= 1.2
 BuildRequires:  docbook-xsl-stylesheets
 BuildRequires:  fdupes
@@ -339,6 +341,7 @@
 %endif
 # Patch disabled, needs rebase.
 #patch1 -p0
+%patch2 -p1
 
 %build
 # Disabled since patch 1 is in need of rebase

++++++ gtk+-3.22.1.tar.xz -> gtk+-3.22.2.tar.xz ++++++
/work/SRC/openSUSE:Factory/gtk3/gtk+-3.22.1.tar.xz 
/work/SRC/openSUSE:Factory/.gtk3.new/gtk+-3.22.2.tar.xz differ: char 25, line 1

++++++ gtk3-startupfix-wayland.patch ++++++
>From c51b463dae1ebcee4e9394e068079fb6639bb71e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <[email protected]>
Date: Mon, 10 Oct 2016 12:33:54 +0200
Subject: [PATCH] gdkdisplay-wayland: Add API to set startup notification ID

For wayland clients, the startup notification ID is currently only set
from the DESKTOP_STARTUP_ID environment variable. As that variable is
only set for clients launched via exec(), startup completion is not
indicated correctly for DBus-activated applications unless an explicit
ID is specified - usually that is not the case, as the default handling
uses gdk_notify_startup_complete().
To address this, we need API to set the startup notification ID from GTK
as we have on X11.

https://bugzilla.gnome.org/show_bug.cgi?id=768531
---
 gdk/wayland/gdkdisplay-wayland.c | 27 +++++++++++++++++++++++++++
 gdk/wayland/gdkwaylanddisplay.h  |  3 +++
 2 files changed, 30 insertions(+)

diff --git a/gdk/wayland/gdkdisplay-wayland.c b/gdk/wayland/gdkdisplay-wayland.c
index cddb2de..784cfbe 100644
--- a/gdk/wayland/gdkdisplay-wayland.c
+++ b/gdk/wayland/gdkdisplay-wayland.c
@@ -796,6 +796,33 @@ gdk_wayland_display_get_next_serial (GdkDisplay *display)
   return ++serial;
 }
 
+/**
+ * gdk_wayland_display_set_startup_notification_id:
+ * @display: (type GdkWaylandDisplay): a #GdkDisplay
+ * @startup_id: the startup notification ID (must be valid utf8)
+ *
+ * Sets the startup notification ID for a display.
+ *
+ * This is usually taken from the value of the DESKTOP_STARTUP_ID
+ * environment variable, but in some cases (such as the application not
+ * being launched using exec()) it can come from other sources.
+ *
+ * The startup ID is also what is used to signal that the startup is
+ * complete (for example, when opening a window or when calling
+ * gdk_notify_startup_complete()).
+ *
+ * Since: 3.22
+ **/
+void
+gdk_wayland_display_set_startup_notification_id (GdkDisplay *display,
+                                                 const char *startup_id)
+{
+  GdkWaylandDisplay *display_wayland = GDK_WAYLAND_DISPLAY (display);
+
+  g_free (display_wayland->startup_notification_id);
+  display_wayland->startup_notification_id = g_strdup (startup_id);
+}
+
 static void
 gdk_wayland_display_notify_startup_complete (GdkDisplay  *display,
                                             const gchar *startup_id)
diff --git a/gdk/wayland/gdkwaylanddisplay.h b/gdk/wayland/gdkwaylanddisplay.h
index a5587ca..f4b51c8 100644
--- a/gdk/wayland/gdkwaylanddisplay.h
+++ b/gdk/wayland/gdkwaylanddisplay.h
@@ -53,6 +53,9 @@ GDK_AVAILABLE_IN_3_10
 void                    gdk_wayland_display_set_cursor_theme    (GdkDisplay  
*display,
                                                                  const gchar 
*theme,
                                                                  gint         
size);
+GDK_AVAILABLE_IN_3_22
+void                    gdk_wayland_display_set_startup_notification_id 
(GdkDisplay *display,
+                                                                         const 
char *startup_id);
 
 G_END_DECLS
 
-- 
2.9.3

>From b29fbaa1d5a615aed7204de7b99c430e52e362b9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <[email protected]>
Date: Mon, 10 Oct 2016 12:33:54 +0200
Subject: [PATCH] wayland: Set startup ID from GApplication platform data

The GApplication platform data may contain a startup ID that on X11
is used to set the startup notification ID when activated. Do the
same on the wayland backend to make startup notifications work for
DBus-activated applications where the DESKTOP_STARTUP_ID environment
variable is not set.

https://bugzilla.gnome.org/show_bug.cgi?id=768531
---
 gtk/gtkapplication-wayland.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/gtk/gtkapplication-wayland.c b/gtk/gtkapplication-wayland.c
index 84df82c..221a1ad 100644
--- a/gtk/gtkapplication-wayland.c
+++ b/gtk/gtkapplication-wayland.c
@@ -61,6 +61,17 @@ gtk_application_impl_wayland_handle_window_realize 
(GtkApplicationImpl *impl,
 }
 
 static void
+gtk_application_impl_wayland_before_emit (GtkApplicationImpl *impl,
+                                          GVariant           *platform_data)
+{
+  const char *startup_notification_id = NULL;
+
+  g_variant_lookup (platform_data, "desktop-startup-id", "&s", 
&startup_notification_id);
+
+  gdk_wayland_display_set_startup_notification_id (gdk_display_get_default (), 
startup_notification_id);
+}
+
+static void
 gtk_application_impl_wayland_init (GtkApplicationImplWayland *wayland)
 {
 }
@@ -72,4 +83,6 @@ gtk_application_impl_wayland_class_init 
(GtkApplicationImplWaylandClass *class)
 
   impl_class->handle_window_realize =
     gtk_application_impl_wayland_handle_window_realize;
+  impl_class->before_emit =
+    gtk_application_impl_wayland_before_emit;
 }
-- 
2.9.3



Reply via email to