Accepting request 1111893 from GNOME:Factory

OBS-URL: https://build.opensuse.org/request/show/1111893
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/nautilus?expand=0&rev=208
This commit is contained in:
2023-09-20 11:22:32 +00:00
committed by Git OBS Bridge
5 changed files with 117 additions and 77 deletions

View File

@@ -1,68 +0,0 @@
From 3a931f617674193dba33448143866aa0735cbd32 Mon Sep 17 00:00:00 2001
From: Corey Berla <corey@berla.me>
Date: Sun, 30 Apr 2023 07:56:24 -0700
Subject: [PATCH] view-cell: Make view property a weak pointer
When the gtk list view is in the process of being destroyed, some of the
cells might still exist with an invalid reference to the nautilus view.
We are having an problem where the double click idle timeout from the
gesture click on the nautilus-view-cell times out when the view-cell
hasn't be freed but the nautilus view has. A good way to test this is
by clicking an item immediately followed by ctrl+w to close the tab
(freeing the view).
I played around with trying to get the gtk list view to free earlier
in the process (i.e. before the nautilus list base), but there were
still instances where the cell still existed by the time the nautilus
view was freed.
To be safe, make the unowned nautilus view a weak pointer of the
nautilus view cell so we can safely check for NULL values.
Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/2859
---
src/nautilus-list-base.c | 6 ++++++
src/nautilus-view-cell.c | 3 ++-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/src/nautilus-list-base.c b/src/nautilus-list-base.c
index 22440bacd0..4aef5b7004 100644
--- a/src/nautilus-list-base.c
+++ b/src/nautilus-list-base.c
@@ -432,6 +432,12 @@ on_item_click_stopped (GtkGestureClick *gesture,
g_autoptr (NautilusListBase) self = nautilus_view_cell_get_view (cell);
NautilusListBasePrivate *priv = nautilus_list_base_get_instance_private (self);
+ if (self == NULL)
+ {
+ /* The view may already be gone before the cell finalized. */
+ return;
+ }
+
rubberband_set_state (self, TRUE);
priv->activate_on_release = FALSE;
priv->deny_background_click = FALSE;
diff --git a/src/nautilus-view-cell.c b/src/nautilus-view-cell.c
index 6f28fd8ff7..a16f365672 100644
--- a/src/nautilus-view-cell.c
+++ b/src/nautilus-view-cell.c
@@ -86,7 +86,7 @@ nautilus_view_cell_set_property (GObject *object,
{
case PROP_VIEW:
{
- priv->view = g_value_get_object (value);
+ g_set_weak_pointer (&priv->view, g_value_get_object (value));
}
break;
@@ -116,6 +116,7 @@ nautilus_view_cell_finalize (GObject *object)
NautilusViewCellPrivate *priv = nautilus_view_cell_get_instance_private (self);
g_clear_object (&priv->item);
+ g_clear_weak_pointer (&priv->view);
G_OBJECT_CLASS (nautilus_view_cell_parent_class)->finalize (object);
}
--
GitLab

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:274a065927596d8a8f09537adc91bae98297201dd47ec6ccd878111e0781d3e5
size 3190788

3
nautilus-45.0.tar.xz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b311c465ce2ca7bc648f61b865187b4451388dec9358a169f3277e741718ab5d
size 3212952

View File

@@ -1,3 +1,114 @@
-------------------------------------------------------------------
Sun Sep 17 01:18:39 UTC 2023 - Luciano Santos <luc14n0@opensuse.org>
- Update to version 45.0:
+ Updated translations.
-------------------------------------------------------------------
Sat Sep 2 19:44:41 UTC 2023 - Luciano Santos <luc14n0@opensuse.org>
- Update to version 45.rc:
+ Avoid slowness when many files are selected.
+ Make tooltip and menu for Preferences back button not empty.
+ Revert patch which could cause loss of data.
+ Fix sizing and styling of Visible Columns.
+ Change sidebar title.
+ Updated translations.
-------------------------------------------------------------------
Sun Aug 27 07:29:52 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 45.beta2:
+ Feature enhancements:
- New "Search Everywhere" buttons to expand search scope
- Modern full-height sidebar layout
- Refined sidebar sizing and folding treshold
+ Performance enhancements:
- Flickerless transition into and from search
- Accelerated generation of multiple thumbnail
- Avoid DBus-activating other apps when starting
+ Bugfixes:
- Delete partially copied file on cancelled copy
- Don't restrict shell search results do %HOME
- Don't open trash on drag hover
- Fix multiple search bugs
- Avoid crashes on search
- Fix "sort after rename" regression
- Fix various styling issues
- Don't allow to resize Properties too small
+ Maintenance: Disable deprecation warnings, fix other warnings
+ Updated translations.
- Drop fix-Werror-return-type-build-error.patch: Fixed upstream.
-------------------------------------------------------------------
Fri Aug 11 10:39:57 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 45.beta:
+ Enhancements:
- Use new navigation view and flat headerbar for Properties
- Don't switch view mode when searching
- Don't add search to history stack
- Optimize view performance when selecting or removing many
items
+ Bugfixes:
- Prefent mixed-language date and time labels
- Multiple starred files view bugfixes
- Context menu capitalization
+ Maintenance:
- Replace some eel API with direct GLib API
- Cleanup URI scheme checking
- Use newer async API for creating thumbnails
+ Updated translations.
-------------------------------------------------------------------
Fri Jul 28 01:25:20 UTC 2023 - Luciano Santos <luc14n0@opensuse.org>
- Add fix-Werror-return-type-build-error.patch as a quick fix for a
build error (return with a value, in function returning void)
caught by -Werror=return-type.
-------------------------------------------------------------------
Fri Jul 7 19:23:54 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 45.alpha:
+ Enhancements:
- Boost search performance
- Redesign Visible Columns options, allow changing default
columns
- Support dropping images from web pages
- Show bytes size as tooltip for folder properties too
- Indicate starred files in grid view
- Support skipping errors while creating compressed archives
- Make date and time format more consistent
- Make Ctrl+F refocus search bar, not cancel search
- Adapt sidebar width to window width, and use a breakpoint for
adaptiveness
- Allow moving keyboard focus within list rows
- Replace GtkComboBox with GtkDropDown
- Simplify Keyboard Shortcuts window definition
- Improve file opening experience while sandboxed
+ Bugfixes:
- Fix results ordering, and other search bugs
- Fix tooltips, a11y labels, and i18n issues
- Fix sushi integration bugs
- Don't hide incompletely deleted folders
- Show file renamed to hidden again on undo
- Don't state file was "deleted" if it was moved to trash
- Fix rubberband range behavior on list view
- Respect modifiers when dropping on tabs; disable broken tab
drop target on X11
- Fix bugs when reloading on autofs timeouts
- Don't offer to format volumes which cannot be formatted, e.g.
MTP
- Fix multiple crashes
- Fix multiple leaks
+ Maintenance:
- Rename default branch to 'main'
- Make libcloudproviders dependency optional again
- Improve reproducibility
+ Updated translations.
- Drop 3a931f61.patch: Fixed upstream.
-------------------------------------------------------------------
Sat Jun 10 07:00:27 UTC 2023 - Luciano Santos <luc14n0@opensuse.org>

View File

@@ -17,19 +17,16 @@
Name: nautilus
Version: 44.2
Version: 45.0
Release: 0
Summary: File Manager for the GNOME Desktop
License: GPL-3.0-or-later AND LGPL-2.1-or-later
Group: Productivity/File utilities
URL: https://wiki.gnome.org/Apps/Nautilus
Source0: https://download.gnome.org/sources/nautilus/44/%{name}-%{version}.tar.xz
Source0: https://download.gnome.org/sources/nautilus/45/%{name}-%{version}.tar.xz
Source1: set_trusted.desktop
Source2: set_trusted.sh
# PATCH-FIX-UPSTREAM fix-crash-when-closing-tabs.patch -- based on commit 3a931f61
Patch1: https://gitlab.gnome.org/GNOME/nautilus/-/commit/3a931f61.patch
# needed for directory ownership
BuildRequires: dbus-1
BuildRequires: fdupes
@@ -51,7 +48,7 @@ BuildRequires: pkgconfig(gnome-autoar-0) >= 0.3.0
BuildRequires: pkgconfig(gnome-desktop-4) >= 1.0.0
BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 42
BuildRequires: pkgconfig(gstreamer-tag-1.0)
BuildRequires: pkgconfig(gtk4) >= 4.9.1
BuildRequires: pkgconfig(gtk4) >= 4.11.2
BuildRequires: pkgconfig(libadwaita-1) >= 1.2.beta
BuildRequires: pkgconfig(libportal)
BuildRequires: pkgconfig(libportal-gtk4)