Control: retitle -1 unblock: gtk+3.0/3.24.37-2 On Wed, 08 Mar 2023 at 13:13:08 +0100, Sebastian Ramacher wrote: > On 2023-03-07 01:12:58 +0000, Simon McVittie wrote: > > Resync with upstream release. What we have in bookworm at the moment > > is GTK 3.24.36 and something like half of 3.24.37; rebasing on 3.24.37 > > seems a better basis for a stable release. > > Agreed. Please go ahead.
Uploaded. There is a slight difference wrt the diff you saw: I added two translation updates from upstream, and one bug fix for interop with non-GTK users of the file transfer portal. gtk+3.0_3.24.37-2-since-prerelease-no-l10n.diff is the diff since the version you approved, filtered to exclude debian/patches/*.patch and po/*.po (so you only see the actual code change). gtk+3.0_3.24.37-2-since-prerelease.diff.gz is the diff since the version you approved, filtered to exclude debian/patches/*.patch only. gtk+3.0_3.24.37-2.diff.gz is the full diff since testing. > > [The file transfer portal code] does have one > > potential interop issue (using a non-standard MIME type) which I've > > reported upstream. I hope fixing that should be a simple change > > (< 10 lines). I included the upstream fix for this in 3.24.37-2, putting it in the same situation as gtk4: for maximum compatibility, both the correct MIME type and the typo'd MIME type are accepted and treated as equivalent. Successfully tested by dragging a file from evince (GTK 3, on host system) to gtk4-demo (Flatpak). > > autopkgtest reports one apparent regression for gnome-photos, but I think > > it might be spurious (the test getting stuck). I'll try to investigate it > > if it turns out to be reproducible. It was not reproducible when retried (2/2 successes since the failure) so I'm going to ignore this unless the problem recurs. smcv
diff --git a/debian/changelog b/debian/changelog index d115481e26..d40e38239b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,10 +1,15 @@ -gtk+3.0 (3.24.37-2) UNRELEASED; urgency=medium +gtk+3.0 (3.24.37-2) unstable; urgency=medium + * d/p/selection-Use-the-right-mime-type.patch: + Add patch to fix incorrect MIME type for file transfer portal. + Regression in 3.24.37, affecting interoperability with other + implementations like the one requested in QTBUG-91357. + * d/patches: Update translations from upstream git: gl, he * d/copyright: Remove gtk-text-input.xml. This file is no longer present in the source package. * Remove Lintian overrides for lintian/lintian!452, no longer necessary - -- Simon McVittie <s...@debian.org> Tue, 07 Mar 2023 00:07:09 +0000 + -- Simon McVittie <s...@debian.org> Wed, 08 Mar 2023 14:52:40 +0000 gtk+3.0 (3.24.37-1) experimental; urgency=medium diff --git a/debian/patches/Update-Galician-translation.patch b/debian/patches/Update-Galician-translation.patch new file mode 100644 index 0000000000..2e729bfcd5 diff --git a/debian/patches/Update-Hebrew-translation.patch b/debian/patches/Update-Hebrew-translation.patch new file mode 100644 index 0000000000..dd90613d9b diff --git a/debian/patches/selection-Use-the-right-mime-type.patch b/debian/patches/selection-Use-the-right-mime-type.patch new file mode 100644 index 0000000000..1c6e8705dc diff --git a/debian/patches/series b/debian/patches/series index 75e2a23964..52b52c99b8 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,3 +1,6 @@ +selection-Use-the-right-mime-type.patch +Update-Hebrew-translation.patch +Update-Galician-translation.patch 016_no_offscreen_widgets_grabbing.patch 017_no_offscreen_device_grabbing.patch 060_ignore-random-icons.patch diff --git a/gtk/gtkselection.c b/gtk/gtkselection.c index 048b4ad496..82755e9a66 100644 --- a/gtk/gtkselection.c +++ b/gtk/gtkselection.c @@ -343,6 +343,7 @@ static GdkAtom text_plain_utf8_atom; static GdkAtom text_plain_locale_atom; static GdkAtom text_uri_list_atom; static GdkAtom portal_files_atom; +static GdkAtom portal_filetransfer_atom; static void init_atoms (void) @@ -364,6 +365,7 @@ init_atoms (void) text_uri_list_atom = gdk_atom_intern_static_string ("text/uri-list"); portal_files_atom = gdk_atom_intern_static_string ("application/vnd.portal.files"); + portal_filetransfer_atom = gdk_atom_intern_static_string ("application/vnd.portal.filetransfer"); } } @@ -526,7 +528,10 @@ gtk_target_list_add_uri_targets (GtkTargetList *list, #ifndef G_OS_WIN32 if (file_transfer_portal_supported ()) - gtk_target_list_add (list, portal_files_atom, 0, info); + { + gtk_target_list_add (list, portal_filetransfer_atom, 0, info); + gtk_target_list_add (list, portal_files_atom, 0, info); + } #endif } @@ -1899,7 +1904,8 @@ gtk_selection_data_set_uris (GtkSelectionData *selection_data, } } #ifndef G_OS_WIN32 - else if (selection_data->target == portal_files_atom && + else if ((selection_data->target == portal_filetransfer_atom || + selection_data->target == portal_files_atom) && file_transfer_portal_supported ()) { GPtrArray *a; @@ -1940,7 +1946,7 @@ gtk_selection_data_set_uris (GtkSelectionData *selection_data, } gtk_selection_data_set (selection_data, - portal_files_atom, + selection_data->target, 8, (guchar *)key, strlen (key)); g_strfreev (files); @@ -1996,7 +2002,8 @@ gtk_selection_data_get_uris (const GtkSelectionData *selection_data) } #ifndef G_OS_WIN32 else if (selection_data->length >= 0 && - selection_data->type == portal_files_atom && + (selection_data->type == portal_filetransfer_atom || + selection_data->type == portal_files_atom) && file_transfer_portal_supported ()) { char *key; @@ -2353,6 +2360,7 @@ gtk_targets_include_uri (GdkAtom *targets, for (i = 0; i < n_targets; i++) { if (targets[i] == text_uri_list_atom || + targets[i] == portal_filetransfer_atom || targets[i] == portal_files_atom) { result = TRUE;
gtk+3.0_3.24.37-2-since-prerelease.diff.gz
Description: application/gzip
gtk+3.0_3.24.37-2.diff.gz
Description: application/gzip