First build glib with introspection disabled, in order to build gobject-introspection, which then can be used to rebuild glib with introspection enabled, as per fe32c3f5c5
The added iterating of 678836bbfc does not
work for UTF-8 strings, which file names generally are. This fixes this
by using appropriate UTF-8 functionality of GLib.
Multi-file property dialogs don't show any extension pages, so there is
no need to keep a list of all mime types for any muilt-file comparisons.
Only store a mime type for a single file and compare with that.
To avoid needless string copies, make nautilus_file_can_rename_file
return a const char* rather then a string copy that has to be freed.
Adjust usages accordingly.
To avoid needless string copies, make nautilus_file_get_symbolic_link_target_path
return a const char* rather then a string copy that has to be freed.
Adjust usages accordingly.
To avoid needless string copies, make nautilus_file_get_group_name
return a const char* rather then a string copy that has to be freed.
Adjust usages accordingly.
Use constant string pointers when comparing/sorting by type. Split the
non-constant part of the helper method `get_description` out into
`get_detailed_description`, while moving shared code into
`get_common_description`.
Port the archive extraction passphrase dialog to use AdwMessageDialog
rather than deprecated GtkDialog. Also use a GtkPasswordEntry for the
entry field.
Part of #2722
Whitespaces in file extensions are not (commonly) used, it's more
likely in cases where a whitespaces occurs after a dot, that the
dot does not indicatie an extension at all.
This change prevents such incorrect extension detections by
checking for whitespaces, and adjusts a self-check test that tested
for the previous behavior.
Sets the file modified time as default when creating a file from a
template so that it appears as a new file.
Also bump glib dependency to 2.79 to insure the API for the default
modification time is supported.
Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/1686
If the Nautilus window is inactive, the new AdwToast is not added but
never freed. By slightly refactoring
nautilus_window_show_operation_notification, this is prevented. Although
the strings were properly freed, change them to g_autofree inside the if
statement for consistency with other functions here.
Pango markup is enabled by default for the AdwToast title for operation
notifications. This means symbols like "&" cause issues. So let's
disable the markup on the toast altogether.
Fixes https://gitlab.gnome.org/GNOME/nautilus/-/issues/3085
The current writing style in the placeholder of the password field in the
compress-dialog-controller is oddly formal. This commit replaces the text with
"Enter a Password."
As described in #3128, the compress-dialog currently does not ask the user
to confirm the password when creating an encrypted archive. This could lead
to typos in the password and potentially data loss if the original files are
deleted after compression.
This MR adds a password confirmation entry to the compress-dialog, preventing typos
and matching the example password entry from the GNOME HIG.
Closes#3128
Since version 2.3 of xdg/shared-mime-info content type descriptions are
capitalized when they have to be, so we don't have to blindly capitalize
all of them.
There's a rare crash where the ::unmounted callback is called
(before it's disconnected), but after the file's directory has been
finalized. This ultimately causes a crash because the unmounted
callback, calls file_invalidate_attributes, which calls directory
functions.
We could move the existing code to disconnect the unmounted
handlder in nautilus_finalize before the call to
nautilus_directory_unref, but instead just use g_signal_connect_object
which will disconnect the handler in dispose rather than finalize.
Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/3047
The mailing list is gone and the replacement is discourse.
As the update_contact tag expects an email address, remove it without
replacement. This tag is meant only for distributors[0], and our
distributors know well how to contact the GNOME project. Also, problems
with this metainfo can just be reported as bugs, so the bugtracker url
tag above is the obvious route.
The discourse is added as a new tag, meant for users to get in contact
with our community for any other reasons.
[0] https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-update_contact