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:
@@ -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
|
||||
|
@@ -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
3
nautilus-45.0.tar.xz
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b311c465ce2ca7bc648f61b865187b4451388dec9358a169f3277e741718ab5d
|
||||
size 3212952
|
111
nautilus.changes
111
nautilus.changes
@@ -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>
|
||||
|
||||
|
@@ -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)
|
||||
|
Reference in New Issue
Block a user