| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The sync variants of file operations have been introduced for use in
integration tests. The async operations have been suffixed _async().
However, likely by mistake, in the restore from trash operation, the
call has been appended _sync rather than _async. [1]
This blocks the main thread until the operation task finishes, causing
a dead lock when the operation thread needs the main thread to show a
conflict dialog. This happens when restoring a file from trash if a new
file with the same name already exists in the original location.
Fixes https://gitlab.gnome.org/GNOME/nautilus/-/issues/790
[1] commit ab31018cdaeb1c592e1c46402c5ae1facc503151
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Emptying trash within Nautilus is a bit slow in comparison to plain
`rm -r`. On my system, it took about 3 min to empty the trash with a
folder containing 600 000 files, which is not ideal as `rm -r` call
took just a few seconds. I found that `g_file_delete` is implemented
differently for locations provided by the trash backend. The trash
backend prevents modifications of trashed content thus the delete
operation is allowed only for the top-level files and folders. So it
is not necessary to recursive delete all files as the permission
denied error is returned anyway. Let's call `g_file_delete` only for
top-level items, which reduces the time necessary for emptying trash
from minutes to seconds...
Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/1589
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The code created to handle the NautilusTagManager::files-changed signal
has been reused for implemeting the NautilusDirectory::force_reload
virtual function.
This is conceptually wrong, because the update_files function doesn't
actually reload the file list. Also, as a side effect, it causes gone
files to reappear as "ghost files" (files without any attributes).
Instead, let's follow what NautilusSearchDirectory does: clear the
current file list after unmonitoring the files, and set the file list
anew the same way it's done on ::init.
Fixes:
https://gitlab.gnome.org/GNOME/nautilus/-/issues/162
https://gitlab.gnome.org/GNOME/nautilus/-/issues/167
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This reverts commit 8efe35665368539de0e15f150292996cb0ab9121.
It aggravated a performance bug. Reverting only on stable branches.
https://gitlab.gnome.org/GNOME/nautilus/-/issues/1226
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"Extract Here", "Extract To…" and "Compress…" menu items are contained
by the extensions menu section, despite not being an extension.
This has worked fine until the extensions menu handling has been
reworked in commit bd81bd895f15c7784a2487ea7d1006910ab0cb40
This commit introduced a regressions which causes the Extract/Compress
items to disappear if actual extension menu items are added.
Since it was already conceptually wrong to have them in this section,
let's move these items into their own menu section to fix the bug.
Fixes https://gitlab.gnome.org/GNOME/nautilus/-/issues/1472
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The style check job currently fails as uncrustify from rawhide obviously
changed its behavior. It tries to change function pointer the following
way:
- gboolean (*each_function)(NautilusCanvasIcon *, gpointer),
+ gboolean ( *each_function )(NautilusCanvasIcon *, gpointer),
I don't think this is right, but don't know how to fix that ellegantly.
Note that this is because of "sp_before_ptr_star = false". Let's
hardcode the previous image varsion to avoid this change for now.
|
|
|
|
|
| |
The style check job currently fails due to the missing git command, which
disappeared after the image update. Let's add the git command explicitely.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
The fedora rawhide job fails currently as the image doesn't contain
Tracker 3 packages. Let's temporarily install the packages from
ssssam/tracker3 copr repository as they are not available yet in
rawhide repositories.
|
|
|
|
|
| |
Creation of new image currently fails on gpg signature checking.
Let's use --nogpg temporarily to make it work again.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Starred files data is now migrated from the Tracker 2.x database if
found. This depends on the `tracker3` CLI tool, which should be
present anywhere that we find libtracker-sparql 3.0. The --2to3
export functionality was added in
https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/308
If/when the migration completes successfully, a stamp file named
`~/.local/share/nautilus/tracker2-migration-complete` is created.
|
|
|
|
|
|
|
|
|
| |
Previously starred files were limited to directories indexed by Tracker.
Since the 'Port to Tracker 3' commit this is no longer the case.
However, to avoid unbounded growth in the starred files database we
want to prevent starring of network locations and removable devices
for now as these entries might go stale and we don't have any way
to clean them up.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Nautilus is a file manager, so we should star files.
Previously we starred the content resources extracted by Tracker Miner
FS, instead. This had the advantage that the stars would follow file
renames. It had the downside of being more complex and limited in
which files can be starred. In Tracker 2.x, the feature only worked
in folders indexed by Tracker Miner FS. With Tracker 3.x, it was
additionally limited to files where Tracker had extracted metadata
-- mainly just documents and media files.
This commit takes the simpler approach of storing the star against
the file URL. All files can now be starred, and stars will no longer
persist when a file is moved or renamed.
Fixes https://gitlab.gnome.org/GNOME/nautilus/-/issues/160
|
|
|
|
|
|
|
| |
This means the Nautilus flatpak will be able to use Tracker on systems
which don't have Tracker 3 available on the host. It comes at a cost of
increased resource consumption inside the Flatpak due running an extra
indexer process there.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tracker 3 is provided in the Flatpak SDK, see
https://gitlab.gnome.org/GNOME/gnome-build-meta/-/merge_requests/630.
We still build tracker-miners inside the Flatpak bundle, so that the
org.freedesktop.Tracker3.Miner.Files settings schema is available, and
so that the tests that depend on Tracker can pass as part of the CI
build.
Access to the host's miners is controlled by the new
org.freedesktop.Tracker.portal process provided in Tracker 3.
|
|
|
|
|
|
| |
This fixes warnings that would appear of this form:
** (org.gnome.Nautilus:662563): WARNING **: 17:11:13.712: Provider NautilusSearchEngineTracker failed with error fts5: syntax error near "."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mostly the port is straightforward, we connect to tracker-miner-fs
explicitly over D-Bus instead of the centralized tracker-store daemon
we connected to previously.
The search-engine-tracker test is now isolated from the user's real
Tracker index using the `tracker-sandbox` script provided by Tracker,
and it lets tracker-miner-fs index the test file rather than trying
to synthesize the expected database contents.
There are more changes in nautilus-tag-manager.c. Until now, starred
file information was stored in the tracker-miner-fs database. This has
some downsides, firstly the data is deleted if someone runs `tracker
reset --hard`, secondly it isn't possible to do this from inside a
Flatpak sandbox with Tracker 3.0. because the
This commit changes the NautilusTagManager to set up a private
database inside XDG_DATA_HOME/nautilus/tags. This stores the starred
file information. The database is managed with Tracker, which allows us
to continue using the rename-tracking that tracker-miner-fs provides.
The same limitations apply as before that only files in indexed
locations can be starred.
|
|
|
|
|
|
| |
In current versions of Tracker, using STRSTARTS to compare URIs is
faster than using Tracker's custom tracker:uri-is-descendant() function.
The former allows SQLite to use an index while the latter does not.
|
| |
|
|
|
|
|
| |
Previously the tests could appear to succeed even if the search
didn't work as expected.
|
| |
|
|
|
|
|
|
|
|
| |
Only process query results if there's no error.
Fix some checks so that we report errors except for
G_IO_ERROR_CANCELLED, which happens normally as part of
nautilus_application_finalize().
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Currently, "data" property is used for release tag, but it should be
"date" instead.
|
|
|
|
|
|
|
|
|
|
|
| |
The batch rename feature supports renaming files by common metadata stored
in Tracker's database. This was previously broken because a filter in the
SPARQL query that intends to limit the file selection to the current
directory was always returning 0 results. Changing the string quote type
from IRI syntax to a regular string literal within that filter call fixes
the problem.
Fixes #1025.
|