From 3c483f92c9f0cf1f77dacf49f886e1159fbc08fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Wed, 6 Mar 2019 13:57:06 +0100 Subject: [PATCH] Backport GNOME 3.32 API compatibility bump Resolves: #1686053 --- bump-compatible-gnome-screen-cast-api.patch | 82 +++++++++++++++++++++ xdg-desktop-portal-gtk.spec | 8 +- 2 files changed, 89 insertions(+), 1 deletion(-) create mode 100644 bump-compatible-gnome-screen-cast-api.patch diff --git a/bump-compatible-gnome-screen-cast-api.patch b/bump-compatible-gnome-screen-cast-api.patch new file mode 100644 index 0000000..ec08db0 --- /dev/null +++ b/bump-compatible-gnome-screen-cast-api.patch @@ -0,0 +1,82 @@ +From f559afd237ea9779461b19ed706dda79c4587d5c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jonas=20=C3=85dahl?= +Date: Wed, 27 Feb 2019 16:42:24 +0100 +Subject: [PATCH 1/2] gnomescreencast: Make signals array static + +--- + src/gnomescreencast.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/gnomescreencast.c b/src/gnomescreencast.c +index fa8548b..3b3e8e4 100644 +--- a/src/gnomescreencast.c ++++ b/src/gnomescreencast.c +@@ -51,7 +51,7 @@ enum + N_SIGNALS + }; + +-guint signals[N_SIGNALS]; ++static guint signals[N_SIGNALS]; + + typedef struct _GnomeScreenCastStream + { +-- +2.20.1 + + +From 7bee9d8d2b591773ed2d61d3087080f38f53330e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jonas=20=C3=85dahl?= +Date: Wed, 27 Feb 2019 16:47:21 +0100 +Subject: [PATCH 2/2] gnomescreencast: Bump supported API version + +Mutter bumped the version when it added the window recording and cursor +modes, so we need to bump the version we support to be compatible. +--- + src/gnomescreencast.c | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +diff --git a/src/gnomescreencast.c b/src/gnomescreencast.c +index 3b3e8e4..f5ed486 100644 +--- a/src/gnomescreencast.c ++++ b/src/gnomescreencast.c +@@ -22,7 +22,7 @@ + + #include + +-#define SUPPORTED_MUTTER_SCREEN_CAST_API_VERSION 1 ++#define SUPPORTED_MUTTER_SCREEN_CAST_API_VERSION 2 + + enum + { +@@ -99,6 +99,8 @@ typedef struct _GnomeScreenCast + { + GObject parent; + ++ int api_version; ++ + guint screen_cast_name_watch; + OrgGnomeMutterScreenCast *proxy; + } GnomeScreenCast; +@@ -487,7 +489,6 @@ gnome_screen_cast_name_appeared (GDBusConnection *connection, + { + GnomeScreenCast *gnome_screen_cast = user_data; + g_autoptr(GError) error = NULL; +- int api_version; + + gnome_screen_cast->proxy = + org_gnome_mutter_screen_cast_proxy_new_sync (connection, +@@ -503,9 +504,9 @@ gnome_screen_cast_name_appeared (GDBusConnection *connection, + return; + } + +- api_version = ++ gnome_screen_cast->api_version = + org_gnome_mutter_screen_cast_get_version (gnome_screen_cast->proxy); +- if (api_version != SUPPORTED_MUTTER_SCREEN_CAST_API_VERSION) ++ if (gnome_screen_cast->api_version > SUPPORTED_MUTTER_SCREEN_CAST_API_VERSION) + { + g_warning ("org.gnome.Mutter.ScreenCast API version not compatible"); + g_clear_object (&gnome_screen_cast->proxy); +-- +2.20.1 + diff --git a/xdg-desktop-portal-gtk.spec b/xdg-desktop-portal-gtk.spec index b8fdd13..12a8964 100644 --- a/xdg-desktop-portal-gtk.spec +++ b/xdg-desktop-portal-gtk.spec @@ -2,13 +2,15 @@ Name: xdg-desktop-portal-gtk Version: 1.2.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Backend implementation for xdg-desktop-portal using GTK+ License: LGPLv2+ URL: https://github.com/flatpak/%{name} Source0: https://github.com/flatpak/%{name}/releases/download/%{version}/%{name}-%{version}.tar.xz +Patch0: bump-compatible-gnome-screen-cast-api.patch + BuildRequires: gcc BuildRequires: gettext BuildRequires: pkgconfig(gtk+-unix-print-3.0) @@ -30,6 +32,7 @@ org.gnome.SessionManager D-Bus interfaces. %prep %setup -q +%patch0 -p1 %build @@ -61,6 +64,9 @@ org.gnome.SessionManager D-Bus interfaces. %changelog +* Wed Mar 06 2019 Jonas Ã…dahl - 1.2.0-3 +- Backport GNOME 3.32 API compatibility bump patch (#1686053) + * Sun Feb 03 2019 Fedora Release Engineering - 1.2.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild