Commit graph

443 commits

Author SHA1 Message Date
Sam Thursfield 29105fc9f6 tag-manager: Track files rather than contents
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
2020-09-02 18:50:17 +02:00
Sam Thursfield f9c79fce6d Use Tracker Miners inside Flatpak when not available on the host
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.
2020-09-02 18:50:17 +02:00
Sam Thursfield 7712c2c7e1 Port to Tracker 3
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.
2020-09-02 17:28:38 +02:00
Ondrej Holy f3977e8aa0 Release version 3.37.91 2020-08-21 08:18:38 +02:00
Ondrej Holy b46854c981 appdata: Fix typo in property name of release tag
Currently, "data" property is used for release tag, but it should be
"date" instead.
2020-08-21 08:00:09 +02:00
Ondrej Holy 975b666363 Release version 3.37.90 2020-08-07 13:35:33 +02:00
Ondrej Holy f485401c39 Release version 3.37.3 2020-07-03 14:30:01 +02:00
Ondrej Holy e45d7b3d5e appdata: Update outdated release list
The list of releases is outdated, which is probably why GNOME Software and
"flatpak info" shows version 3.32.1 for our nightly bundles, although the
About dialog shows something completely different. Let's replace the list of
outdated releases with just the current one. Also add comment in meson.build
to not forget about it next time.
2020-06-13 16:55:20 +00:00
Ondrej Holy 82dcbfe316 appdata: Use mailing list address as update contact
The update contact points to our previous maintainer. Let's use the
mailing list address instead to be always valid...
2020-06-13 16:55:20 +00:00
António Fernandes e003246153 .desktop: Include traditional name as search keyword
Based on patches from Felipe Borges for other apps. Quoting him:

The GNOME Shell search results are forwarded from the results of
GLib's g_desktop_app_info_search() function, which matches the
Name, Exec, Keywords, GenericName, X_GNOME_FullName, and Comment
keys from desktop files[0].

Since Totem is now named "Videos", a query for "totem" would
match the "Exec" key and present the application in the search
results as expected. Unfortunately that doesn't happen for Flaptaked
Totem, which would get its desktop file "Exec" key overwritten to
something such as Exec=/usr/bin/flatpak run --branch=stable
--arch=x86_64 --command=totem org.gnome.Totem --new-document

This way, searching for "totem" when only the Flatpaked version
of it is installed returns no results. Searching for "Videos"
presents the application as expected.

Its been proposed in GLib to parse the "Exec" key for searches
but that was rejected[1] because it would imply establishing an
API which assumes that the command line behavior of Flatpak would
be stable/never-change.

A fix was proposed in Flatpak directly[2] but it was rejected,
leaving us with the only option of adding the historical/legacy
application names to the "Keywords" key in their desktop files.

Many users, such as myself, have the "muscle memory" of search
for the old application's name, such as "totem", "gedit", "evince".
Although I agree that the new names should be presented to new
users and that the old ones shouldn't be visible in UI, it makes
sense and little effort to support the search for the old names IMO.

[0] https://gitlab.gnome.org/GNOME/glib/blob/master/gio/gdesktopappinfo.c#L378
[1] glib#1706
[2] https://github.com/flatpak/flatpak/issues/2749
2020-04-10 16:57:29 +00:00
Alberts Muktupāvels 1b063137ce dbus-manager: clarify CreateFolder method
https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/504
2020-04-06 21:19:15 +03:00
Alberts Muktupāvels 7425abd7c0 dbus-manager: add ask_confirmation parameter to EmptyTrash
https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/504
2020-04-06 21:19:15 +03:00
Alberts Muktupāvels 7adf189c8d dbus-manager: deprecate old interface
https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/504
2020-04-06 21:19:15 +03:00
Alberts Muktupāvels 1a26621dbd dbus-manager: add DeleteURIs method
Add DeleteURIs method to make it possible to permanently delete
files avoiding trash.

https://gitlab.gnome.org/GNOME/nautilus/merge_requests/504
2020-04-06 21:19:15 +03:00
Alberts Muktupāvels dce530aa87 dbus-manager: add and implement FileOperations2 interface
Add new version of FileOperations interface. This versions adds
PlatformData argument to all methods. Currently supported arguments
are parent-handle and timestamp.

This change is necessary for proper focus handling.

https://gitlab.gnome.org/GNOME/nautilus/merge_requests/504
2020-04-06 21:19:15 +03:00
Ondrej Holy bec3229e99 uncrustify: Group single line comments to block
C++ comments ("//") are converted to C comments ("/* */"), but they
are not grouped together. So, each line is enclosed by "/* */". Let's
add cmt_cpp_group and cmt_c_group options to ensure that the single
line comments are grouped together.
2020-04-05 16:22:26 +00:00
Ondrej Holy 787842f948 uncrustify: Fix indentation of ternary operators statements
Let's add "indent_ternary_operator = 1" to our uncrustify.cfg in order
to prevent the following unwanted change:

     list = back ? nautilus_window_slot_get_back_history (self->window_slot) :
-                  nautilus_window_slot_get_forward_history (self->window_slot);
+           nautilus_window_slot_get_forward_history (self->window_slot);
2020-04-05 16:22:26 +00:00
Ondrej Holy e66f540052 run-uncrustify.sh: Skip some imported source codes
Skip gtk, animation and audio-video-properties subdirectories as those
codes are copy&pasted from other project.
2020-04-05 16:22:26 +00:00
António Fernandes 9a9dba195d build: Use new nightly icon for the Devel profile
A variant of the app icon has been introduced in the previous commit.

Let's use it for the Devel profile.

Part ot https://gitlab.gnome.org/GNOME/Initiatives/issues/12
2019-10-13 16:13:26 +00:00
Jakub Steiner 108cd327d7 icon: create a nightly app icon
Provide a development variant of the app icon
See https://gitlab.gnome.org/GNOME/Initiatives/issues/12
for more info.
2019-10-13 16:13:26 +00:00
Ondrej Holy 6f0f48c47c appdata: Use Files instead of Nautilus
Files is name which is used in the About dialog, the in Desktop file
and on the website, thus we should use it also in the AppData file as other
projects do.

This fixes the following downstream bug:
https://bugzilla.redhat.com/show_bug.cgi?id=1725120
2019-07-04 11:00:32 +00:00
Kalev Lember 8d5adcbdf8 appdata: Fix accidentally changed appstream ID
Keep the ID as "org.gnome.Nautilus.desktop" as was in 3.32.x. The
appstream ID is supposed to be stable and not change.

This partially reverts commit e3e2811b9e
2019-02-06 09:34:44 +01:00
Bilal Elmoussaoui e3e2811b9e appdata: update the appstream data to follow the latest specs
Specs: https://www.freedesktop.org/software/appstream/docs/chap-Quickstart.html
The categories are merged from the desktop file with appstream-compose
No need to keep a duplicated info here.
2019-06-15 08:49:04 +02:00
ZhaoQiang d225c52f1d general: Update URL for issue reports 2019-04-30 13:22:05 +02:00
Ernestas Kulik 2cca1945e1 build: Don’t build lineup-parameters by default
It’s only needed on a case-by-case basis.
2019-04-14 14:39:17 +02:00
Philip Withnall 51b543cd51 data: Fix caption capitalisation in appdata file
Make the capitalisation of the image captions match the translatable
titles of the dialogues in the images, so that translations can be
reused.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-04-11 12:36:21 +01:00
Bilal Elmoussaoui 62a28f0e4d Meson: validate appdata file without network access
Network access is restricted on Flatpak build env, the same with other distros running tests for packages during the build process without network access. Fixes the pipeline from failing.
2019-01-15 11:24:44 +00:00
Timothy OBrien 2eed21b2dd org.gnome.Nautilus.appdata.xml.in.in: No screenshots in appdata
No screenshots were supplied by the appdata xml meaning that software install tools would not show them to the user.

This commit proposes a set of screenshots hosted via the static-web project: https://gitlab.gnome.org/Infrastructure/static-web

See static-web merge request https://gitlab.gnome.org/Infrastructure/static-web/merge_requests/2 for proposed screenshots.

Fixes #556
2019-01-15 09:50:43 +00:00
Piotr Drąg 1e8631444f gschema: Use Unicode quotation marks in default-sort-order’s description
See https://developer.gnome.org/hig/stable/typography.html

https://bugzilla.gnome.org/show_bug.cgi?id=774288
2018-12-07 19:19:25 +01:00
António Fernandes 29733c26e2 file: Drop NAUTILUS_FILE_SORT_NONE
This was needed for manual layout, which was still used for handling
desktop icons. Non-desktop views still have code to gracefully handle
this value.

With the refactoring from the last commit, we can finally drop this.
2018-12-07 15:44:15 +00:00
António Fernandes d6effd2d6c gschema.xml: Update default-sort-order's description 2018-12-07 15:44:15 +00:00
António Fernandes 947d28a904 file: Sync sort types with settings
The org.gnome.nautilus.preferences default-sort-order key is a currently
hidden-from-UI preference that should be honored by all views, if no
custom order is specified in the current location's metadata.

However, for this to work, two enums must be kept in sync between the
code and the schemas. This has not been happening since the introduction
of the Starred files feature.

To fix this, restore the sort order according to settings, and make
starred take the place of trash-time, which is non-sensical as default
for all folders.

Forthermore, to prevent this from breaking again, add documentation to
both enums.

Fixes https://gitlab.gnome.org/GNOME/nautilus/issues/636
2018-12-07 15:44:15 +00:00
Jakub Steiner 1bf45f7da7 icon: legibility/style tweaks
- further address the scaling sharpness

https://gitlab.gnome.org/GNOME/nautilus/issues/743
2018-11-21 18:53:43 +01:00
Carlos Soriano 42c5ce657e dbus: Implement rename file
So desktop icons extensions can use it.
2018-11-19 17:38:37 +01:00
Iain Lane 60634cfee0
dbus-interfaces: Remove stray "
This is a typo.
2018-11-14 15:24:43 +00:00
Jakub Steiner a12524c9af icon: improve grid fit
- imrpove the grid fit of the shapes. Primary sizes are 128, 64 and 32,
  but we render at 96 in the shell in many places.

  This isn't perfect and we're probably be better off sticking to 128
  in the shell, but it is less fuzzy.

Adresses issue #743
2018-11-13 13:51:14 +01:00
Tobias Bernard a22096003c App icon: update colors and shape to latest guidelines 2018-10-19 14:16:30 +02:00
Carlos Soriano 76b84467ad Revert "Revert "build: Don't loop over icons""
This reverts commit 37799d64ca
2018-09-14 05:12:34 +00:00
Carlos Soriano 564b9dcbd7 Revert "Revert "icon: update app icon""
This reverts commit efef783dbd
2018-09-14 05:12:12 +00:00
Carlos Soriano efef783dbd Revert "icon: update app icon"
This reverts commit be862db092
2018-09-14 05:10:13 +00:00
Carlos Soriano 37799d64ca Revert "build: Don't loop over icons"
This reverts commit a7a03f6398
2018-09-14 05:09:47 +00:00
Carlos Soriano a7a03f6398 build: Don't loop over icons
Since we have only one now.
2018-09-13 14:42:07 +02:00
Jakub Steiner be862db092 icon: update app icon
- GNOME 3.32 redesign of app icons.
  See https://gitlab.gnome.org/GNOME/Initiatives/issues/2
  for more info.

/label ~"9. Initiative: AppIconRedesign"
2018-09-13 14:42:07 +02:00
Carlos Soriano 533dceb8ca dbus-manager: Provide undo status
This is interesting for the desktop icons integration, so it can hide
the undo/redo menu items appropriately.
2018-08-18 20:32:28 +02:00
Carlos Soriano 9e9ca30c13 dbus: Implement move operation
Analog to the copy operation.
2018-08-08 14:07:48 +02:00
Carlos Soriano 60c3f2ea83 dbus-manager: Drop copy file operation
It was truly unreliable and not working clearly. We have a more powerful
and simpler API with CopyURIs, so there is no point to have this one.

This commits drops the DBus API. Note that the DBus version is not
bumped, I believe this DBus API is not used by any external service
given how broken was it.
2018-08-07 21:27:50 +02:00
Carlos Soriano 36b011a9e0 dbus-manager: Implement undo/redo
For the integration with the desktop icons extension.
2018-08-07 19:14:09 +00:00
Carlos Soriano 2543432aa1 dbus-manager: Implement creation of new folders
For the integration with the desktop icons extension.
2018-08-07 19:14:08 +00:00
Carlos Soriano 6b5be51c04 dbus-manager: Implement trashing files
So desktop icons extension can use it.
2018-08-07 19:14:08 +00:00
Carlos Soriano a4fa624abc general: Remove trash shortcut changed handling
It was introduced in 3.14, most probably everyone is in a newer version
already...

Time to clean up!
2018-07-26 19:25:15 +02:00
Carlos Soriano ac886102c2 general: Revert to allow running binaries and scripts
Recently we removed the ability to launch binaries and scripts in
commit 3a22ed5b8e.

A few cases appeared that we need to support, specially for enterprise
and content creators. Specifically, cases similar to https://gitlab.gnome.org/GNOME/nautilus/issues/434

This also shows that is hard to predict cases like these, as some
complex setups might be needed for specific workflows.

This commits allow to run binaries and scripts as before, and further
investigation in these cases need to be done if we ever want to tweak
the workflow of running binaries.

More discussion about improving binaries/script handling is being
proposed and discussed in https://gitlab.gnome.org/GNOME/nautilus/issues/443
2018-05-21 06:29:14 +00:00
Philip Langdale a1751d3d87 nautilus-application: Publish window->location mappings
This is a reworking of a long standing Ubuntu patch that publishes
the set of locations open in each Nautilus window. The motivation
for this change is that a desktop environment providing special
icons for things like removable devices and the trash can match
windows to those icons for highlighting purposes.

In the original incarnation, Unity provided these icons. In today's
world, I'm maintaining a set of patches for dash-to-dock/ubunut-dock
that provide these icons too.

The original implementation uses Xids to identify windows, but Xids
aren't a thing in Wayland so this mechanism is a dead end. Instead,
we can use the 'gtk application window object paths' which are
published over dbus by GtkApplications, including Nautilus.

Mutter already detects these, and makes them available on MetaWindows.

The original patch added the mapping property to the fileManager1
interface, and I have left that part as-is, but it's likely not to
be the right place to put it. fileManager1 is a generic interface
and a property that assumes a GTK behaviour doesn't seem right.

We could obviously add it to a new interface under org.gnome.Nautilus,
but this would be Nautilus specific - although there isn't a huge
scope for other file managers to implement this property, so perhaps
that's just fine.

dash-to-dock discussion is readable here:

https://github.com/micheleg/dash-to-dock/pull/677
2018-05-19 07:26:20 -07:00
Carlos Soriano 3a22ed5b8e general: Don't allow launching binaries or programs in general
For long we used to support that since the desktop was part of Nautilus.
Also, back then we didn't have a Software app where you are expected to
installs apps. Back then it was common for apps to be delivered in
a tarball, nowadays that's out of question.

Now that the desktop is long gone, launching binaries and desktop files
from within Nautilus is not as useful. Not only that, but we are moving
towards a more sandboxed system, and we should use the standard and
system wide support for launching apps based on users choices.

We also are not able to be secure enough to handle this, as we saw in
the past we allowed untrusted binaries to be launched, and therefore
we had a CVE (CVE-2017-14604) for Nautilus. We are not being audited
(afaik) and we are not in a position that we can let this issues slip.

With that altogether, this prevents launching binaries or programs from
Nautilus.

Closes: https://gitlab.gnome.org/GNOME/nautilus/issues/184
2018-05-09 14:24:17 +00:00
Ernestas Kulik feb69b4979 build: Use install_data() to rename icons
Since 0.46.0, Meson allows renaming files when installing them. This is
useful to replace any workarounds to achieve the same (namely, the
icons).
2018-04-28 20:22:11 +03:00
Carlos Soriano 1ed0610075 meson.build: Use proper FIXME notation 2018-04-27 14:30:57 +00:00
Ernestas Kulik 5633b13f92 build: Fix icon renaming
Currently, when looping over icon sizes, each icon is copied to
$MESON_BUILD_ROOT/@appid@.png, meaning that the file is overwritten on
every iteration. This commit fixes that by copying to a subdirectory
under the build root and installing from there.

Fixes https://gitlab.gnome.org/GNOME/nautilus/issues/364
2018-04-14 12:34:38 +03:00
Christophe Fergeau 85715707b1 preferences: Fix MB/MiB confusion
NAUTILUS_PREFERENCES_FILE_THUMBNAIL_LIMIT really uses MiB as its unit,
not MB as we multiply its value by 1024*1024 (MEGA_TO_BASE_RATE) in
thumbnail_limit_changed_callback(). This commit changes
MEGA_TO_BASE_RATE and its maximum value so that it shows a number using
MB unit as advertised.
2018-03-30 12:51:46 +02:00
Ernestas Kulik 17ebc7e403 data/meson.build: Compile gschemas during the build
In particular this can be useful when running tests from the build
directory in Builder.
2018-03-24 18:22:14 +02:00
Ernestas Kulik df583c2e4a general: Allow running in separate instance
When hacking on Nautilus, it is very inconvenient to have to close any
running instance before running the built version. This commit enables
running three different instances by changing the application ID.
Beside the default “profile” is one crafted for stable flatpak
releases and one for development. The stable flatpak profile adds an
identifying mark to the about dialog to aid collecting information in
bug reports. The development profile is that plus additional styling to
help visually identify the development instance. It also will be used
when generating Flatpak bundles with the help of CI.

Generally, the implementation is slightly hacky to allow all the
different workflows, spanning from regular installations to GNOME
Builder flatpak builds, as each comes with its own quirks.
2018-03-18 22:28:08 +02:00
Ernestas Kulik 30a76b3033 Rename search provider file
flatpak-builder only exports data files that are prefixed with the
application ID. Without this, the Flatpak version does not enable shell
search functionality.
2018-03-18 22:28:08 +02:00
Ernestas Kulik e8d66ca9ac gschema: fix key description
Since 611f381d56, the limit is no longer
expressed in bytes.
2018-03-12 14:00:50 +00:00
Ernestas Kulik d7e30914b9 run-uncrustify.sh: invert lineup-parameters check
Inverting the checks and exiting instead will help keep indentation
levels in check.
2018-02-14 11:23:48 +02:00
Ernestas Kulik c647567569 run-uncrustify.sh: detect if uncrustify is not installed
Otherwise it will keep spamming stderr about the command not being
found.
2018-02-14 11:13:04 +02:00
Ernestas Kulik 096f8e2d4f run-uncrustify.sh: adapt to changed directory hierarchy
Extensions were moved under extensions/.
2018-02-14 11:12:33 +02:00
Ernestas Kulik 0f411dc451 uncrustify.cfg: remove superfluous semicolons
In cases where statements accidentally end with tho semicolons or where
semicolons are added needlessly (empty loop bodies), those semicolons
should be removed.
2018-02-14 11:11:17 +02:00
Carlos Soriano 27b039b37c general: Rename from 'favorite' to 'starred'
It was a mix of both terms, given that tracker uses 'favorite' but we
use 'starred' in the UI. Since the part that interact with tracker is
minimal, is better to be consistent with the UI.

This renames 'favorite' to 'starred' except the tracker queries.
2018-02-13 20:11:55 +01:00
Carlos Soriano ca8e5e1f3f general: Remove external bulk rename
In these years, I never heard any tool actually using it. Moreover, now
we offer batch rename ourselves, so let's focus our efforts on that.
2018-02-13 11:13:51 +01:00
Jeremy Bicha dbb8bd607d build: Install appstream metadata to non-deprecated location
This was already done in 5d75a4a5
but accidentally reverted in 983892a6
2018-01-30 12:33:46 -05:00
Ernestas Kulik f0df1fc510 general: only remember window size
Currently, Nautilus is able to save the last window position when it’s
closed. That is broken in certain cases (#197 and multi-monitor setups
in general) and therefore window placement is best left to the window
manager.
2018-01-16 13:23:54 +02:00
Ernestas Kulik 74b0a69b6e global-preferences: remove thumbnail-size setting
As the setting can only be changed manually (and the assumption is that
no one does that), it makes sense to not expose it and always use the
default.
2018-01-05 15:08:06 +02:00
Ernestas Kulik 983892a656 build: general cleanups
This commit does the following:
  * Canonicalize the style:
    * Use two-space indentations.
    * Un-Autotools-ify option names.
    * Don’t align arguments, simply increase indentation.
    * Don’t add a space before opening parenthesis in calls.
  * Remove unused variables.
  * Remove unused dependencies.
  * Remove config.h.meson.
  * Optimize dependencies.
  * Use disabler functionality for libselinux dependency, to save lines.
2018-01-02 12:51:32 +02:00
Ernestas Kulik 74dd9c9f72 general: remove desktop support 2018-01-02 12:51:32 +02:00
Alexandru Pandelea a9c446afe2 Add favorite files
Add option to make files Favorite, by either toggling a star in the
list view, or from the context menu.

https://bugzilla.gnome.org/show_bug.cgi?id=786039
2017-11-05 20:09:00 +01:00
Carlos Soriano 9ad049def7 Merge branch 'alexpandelea/issue65' into 'master'
remove setting fts from preference dialog

See merge request GNOME/nautilus!14
2017-11-03 16:55:54 +00:00
António Fernandes 046e9e8529 gschema: clarify/simplify some strings in the gconf schemas
Based on old pending patch by Christian Neumair on the following bug:

https://bugzilla.gnome.org/show_bug.cgi?id=309879
2017-11-02 15:57:49 +00:00
Alexandru Pandelea d33960cd1c remove setting fts from preference dialog
Instead of setting whether the search should be full text search or
not from the preference dialog, make the permanent setting from the
search popover.

https://gitlab.gnome.org/GNOME/nautilus/issues/65
2017-10-21 19:19:38 +03:00
Anders Jonsson ff5a93f608 Fix typo
(overriden -> overridden)

https://bugzilla.gnome.org/show_bug.cgi?id=786965
2017-10-14 15:13:10 +02:00
Ernestas Kulik a762659d6c build: add tests for data files
This will help avoid potentially breaking pre-release changes in the
future.

https://bugzilla.gnome.org/show_bug.cgi?id=786104
2017-08-11 14:13:07 +03:00
Jeremy Bicha 501ece61be general: Remove spaces from .desktop MimeType list
https://bugzilla.gnome.org/show_bug.cgi?id=786079
2017-08-09 20:56:49 -04:00
Carlos Soriano 1bdc404245 general: Add mime type support for archives
Until now archives were managed only if activated from Nautilus itself
and if a setting was set.

There are two main problems with this.
1- Archives opened in other apps cannot be handled by Nautilus
2- Users cannot use the regular mime type handling for setting Nautilus
as the app handling archives, or unsetting it.

This patch add support for archives mime types handled by gnome-autoar
and removes the UI and setting used in the previous version.

https://bugzilla.gnome.org/show_bug.cgi?id=771424
2017-08-09 22:07:59 +02:00
Carlos Soriano 8005c8abe1 nautilus.desktop: Remove saved-search leftovers
It was removed long ago

https://bugzilla.gnome.org/show_bug.cgi?id=771424
2017-08-09 20:27:07 +02:00
Alexandru Pandelea 11cbe223a5 implement fts
The search text can now also match the contents of a file, besides
the file name.

This is done with the help of a Tracker query, using fts:match, which
matces both the contents of a file and the filename.

The user also has the option to choose whether to use or not the
Full Text Search. This can be done with a preference, which represents
the default option when opening a new tab/window or from the search
popover.

https://bugzilla.gnome.org/show_bug.cgi?id=775961
2017-06-22 16:49:41 +03:00
Jeremy Bicha 9a0c5cdf12 autostart: Set NoDisplay=true
This hides the autostart from Ubuntu's Startup Applications
app since we don't want users to easily disable this without
understanding why it's there.

https://bugzilla.gnome.org/show_bug.cgi?id=781874
2017-04-28 08:16:08 -04:00
Ernestas Kulik 857a90c29b autotools: kill it
We’re moving to Meson this cycle, so this is losing some deadweight.

https://bugzilla.gnome.org/show_bug.cgi?id=780366
2017-03-22 17:18:29 +02:00
Jan Tojnar a67d17b142 general: Allow running uncrustify from elsewhere
run-uncrustify.sh script uses cwd relative file names, which fails
if it is ran from the repository root or other directory.

This commit fixes the paths relative to the script.

https://bugzilla.gnome.org/show_bug.cgi?id=779408
2017-03-03 17:06:18 +01:00
Ernestas Kulik ed5652c89a general: add support for Meson
Since it’s 2017 already, Nautilus should use a build system that doesn’t
take longer to set up the build than it takes to actually build. An
observed build time using Ninja of roughly one-fifth of what it took
Autotools is more than reason enough to add support for Meson. Along
with that, this commit adds a convenience script to generate a tarball
for releases, since we use libgd as a submodule and Meson does not
handle source distributions.

https://bugzilla.gnome.org/show_bug.cgi?id=778167
2017-02-24 00:24:27 +02:00
Ernestas Kulik 728300331d general: drop git.mk
This commit removes git.mk and adds hand-written gitignore files. That
is needed to ignore build/, which is the directory of choice for Meson
builds.

https://bugzilla.gnome.org/show_bug.cgi?id=778167
2017-02-24 00:24:27 +02:00
Piotr Drąg 30d6f75def gschema: fixes to new translatable strings 2017-02-15 01:54:55 +01:00
Carlos Soriano 1e5eba1d7c view-icon: add new zoom level
With the flow box we can finally add more zoom levels. Add a new larger
one so the user can view larger content.
2017-02-15 01:27:41 +01:00
Carlos Soriano 0a65897c43 gschema: make list view default when searching
Not sure when this changed, but it's a mistake since we always wanted
list view when searching as default.

Let's fix it.
2017-02-15 01:27:41 +01:00
Carlos Soriano 1d166b5e3b views: add flow box based view
After all the rework on the window slots, views, and splitting
the desktop, we are finally able to add a flow box based view for
Nautilus.

The GtkFlowBox is still not performance enough to be added as the
default view, not even as an alternative in the user preferences.
However, since the work on this is one of the biggest for Nautilus and
gtk+, the decision was to merge a prototype in order to open the
development, testing and iteration of the code in order to make it
good enough for, in a not so far away future, have it as the main view.

The work merged is not finished, and is an experiment and prototype in
more things than just the GtkFlowBox, we want to create a single shared
model with a complete MVC pattern between all the views. This will need
quite a few iterations to get it right, but once is done right, I hope
it's going to be good enough as an example to any application that wants
multiple types of views with the new widgets of gtk+.

This patch adds the GtkFlowBox view to be optionally used under a
gsetting called use-experimental-views, turned off by default.
2017-02-15 01:27:41 +01:00
Ernestas Kulik ecb7f992f5 Revert "general: use Autoconf to perform substitution"
This reverts commit 48cd7072a1.
2017-01-05 00:04:43 +02:00
Ernestas Kulik db8e84d7e3 data/Makefile.am: fix up indentation
https://bugzilla.gnome.org/show_bug.cgi?id=776796
2017-01-04 17:37:02 +02:00
Ernestas Kulik 48cd7072a1 general: use Autoconf to perform substitution
Variables in service files are substituted using sed, which takes more
space than a couple of lines in configure.ac.

https://bugzilla.gnome.org/show_bug.cgi?id=776796
2017-01-04 17:37:02 +02:00
Ernestas Kulik 3868b4cc87 general: remove Bug Buddy metadata from desktop files
Bug Buddy is no longer actively maintained and probably even less
actively used. ABRT and Apport seem to not parse these things as well.

https://bugzilla.gnome.org/show_bug.cgi?id=776796
2017-01-04 17:37:02 +02:00
Ernestas Kulik 04173f0f0a general: remove search provider service
It was to be removed in 39b4fc320b.

https://bugzilla.gnome.org/show_bug.cgi?id=776796
2017-01-04 17:37:02 +02:00
Lapo Calamandrei 8b7dbcdda8 icon: refresh the fullcolor app icon
It's blue now, there won't never be enough blue icons.
2016-12-31 19:41:22 +01:00
Jakub Steiner 191cde15cf icon: fix misrendering
- work around the issue in Inkscape. For more information, see
  https://bugs.launchpad.net/inkscape/+bug/1651436
2016-12-20 14:02:28 +01:00
Jakub Steiner b45e25df42 icon: updated app icon
Part of the Adwaita fullcolor refresh.

- 512x512px for highres
- less shine
- flatter
2016-12-15 12:40:26 +01:00
Piotr Drąg 5c213a6be6 Use Unicode in translatable strings
See https://developer.gnome.org/hig/stable/typography.html

https://bugzilla.gnome.org/show_bug.cgi?id=774288
2016-11-12 17:45:21 +01:00
Felipe Borges e1443f8d5c files-view, preferences: sync sort-directories-first with Gtk+
The sort-directories-first gsetting should be consistent
system-wise.

https://bugzilla.gnome.org/show_bug.cgi?id=750996
2016-11-07 16:13:43 +01:00
Ernestas Kulik 8c47f50ff2 general: quash some warnings
lineup-parameters: remove unused variable (fixed upstream)
bookmark: cast away const modifier in nautilus_bookmark_compare_with()
when using GLib macros
file-operations: used correct enum in a function call

https://bugzilla.gnome.org/show_bug.cgi?id=772586
2016-10-07 21:03:53 +03:00
Carlos Soriano 0abaab1c44 general: adjust uncrustify style
https://bugzilla.gnome.org/show_bug.cgi?id=770564
2016-09-06 15:41:06 +02:00
Dominique Leuenberger 2f0a9546b2 Fix compiler warning
The final return should not be reachable - but there is no way for
the compiler to know

Just return 0 as last fallback

https://bugzilla.gnome.org/show_bug.cgi?id=770652
2016-09-01 09:42:32 +02:00
Carlos Soriano 4cafccd828 general: add uncrustify script
The current style of nautilus is rather poor and mixes at least 3
different code styles.

Specific issues that affect the most common contributors to Nautilus
performance are:
- tabs for multiline alignment.
- mix of tabs and spaces.
- errors on no braced one liners conditionals.
- errors on non braced case statements with variable declarations.

So I would say requirements for the style is to address the previous
issues and also be a well known style. I don't want new contributors
to see a new style completely different from C books authors.

So far, I found Allman (aka BSD) style which seems the choice of most C
books authors as far as I can see on internet, and it address the
previous mentioned issues.

Since uncrustify doesn't support the aligment of parameters we do for
multiple stars "**", we also added a script made by Sebastian Wilmet
to align those.

As a matter of practicity I'm going to convert all Nautilus style to
this one, and if the next person who contributes most on Nautilus has
a different choice, please feel free to change it to whatever makes your
performance and your contributors performance the best.

https://bugzilla.gnome.org/show_bug.cgi?id=770564
2016-08-29 18:37:10 +02:00
Razvan Chitu 9d8de33448 general: add a setting for the default compression format
The compression operation allows multiple formats to be selected. It would be
good to store the last choice of the user in order to select it for future
operations.

https://bugzilla.gnome.org/show_bug.cgi?id=770199
2016-08-23 00:37:17 +03:00
Razvan Chitu 51dbfc9778 general: add preference for automatic decompression of archives
Make extraction the default action for activating selected archives and add an
option to open them instead of extracting.

https://bugzilla.gnome.org/show_bug.cgi?id=768646
2016-08-23 00:36:56 +03:00
Ernestas Kulik 5c352daa98 data/icons/Makefile.am: include 256x256 icon
The Automake file for icons was missing the 256x256 icon. This commit
includes it in the data file list.

https://bugzilla.gnome.org/show_bug.cgi?id=770145
2016-08-19 20:48:06 +03:00
Carlos Soriano 7a9eacc0af general: move the Nautilus icon to the source tree
Instead of using a themed icon.
This is necessary for flatpak Nautilus properly.

Patch made mostly by Mathieu Bridon and help of Patrick Griffis.
Thanks a lot!
2016-08-19 00:08:46 +02:00
Carlos Soriano 721184d135 Revert "general: move the Nautilus icon to the source tree"
This reverts commit eff30bcf53.
2016-08-18 22:24:52 +02:00
Carlos Soriano eff30bcf53 general: move the Nautilus icon to the source tree
Instead of using a themed icon.
This is necessary for flatpak Nautilus properly.
2016-08-18 22:20:30 +02:00
Piotr Drąg 795fe838df Add translator comments to .desktop files 2016-08-03 12:35:46 +02:00
Ernestas Kulik fc2139c117 Port from intltool
gettext has been continuously improving, up to a point where intltool
can be deprecated in favor of it. This commit ports the project files to
use upstream gettext.

https://bugzilla.gnome.org/show_bug.cgi?id=769362
2016-08-03 10:42:40 +03:00
Carlos Soriano a93e1a5014 desktop: add command line options for override gsettings
Sometimes we want to override the show-desktop-icons gsettings, as we
were doing before splitting the desktop.

Wrongly I assumed that since it's a different binary, once can simply
run it or not, but of course that was an oversimplification, and forgot
all what I needed to do in order to support all the cases for the
desktop handling.

This patch adds the missing command line options we had, --force-desktop
and --no-desktop, and also adds the --force-desktop to the classic
desktop file, since we needed to enable the classic mode.

https://bugzilla.gnome.org/show_bug.cgi?id=765159
2016-04-22 15:50:35 +02:00
Carlos Soriano 9bb4ff0275 desktop: add a compile flag for building it
So we can build nautilus without desktop support and the other way
around.

https://bugzilla.gnome.org/show_bug.cgi?id=712620
2016-04-19 16:51:15 +02:00
Carlos Soriano b80390d0c4 desktop: move to a different binary
We wanted to do this for long time. This will allow to handle the
desktop process in a different binary.
The ultimate goal is to make the desktop code completely split from
nautilus code.

This is the first and minimal step towards that goal.

In this patch we create a desktop application separated from nautilus
application, and remove the desktop handling in nautilus application.

https://bugzilla.gnome.org/show_bug.cgi?id=712620
2016-04-14 10:35:14 +02:00
Carlos Soriano dd5f9d44bc gschema: Fix docs of thumbnail size 2016-02-24 11:15:02 +01:00
Carlos Soriano fd21c947cc general: add another zoom level
In icon view, add a smaller zoom level to be able for dense views,
and increase the default padding to allow the labels enough space.

Now levels are 48px, 64px, 96px and 128px for icon view, instead of
only 64px, 96px and 128px, but with the increased padding the 64px and
48px are useful.

List view also gains a bigger level, and they become 16px, 32px, 48px,
64px.

Also, adjust the label max width to be larger, but inside the icon
itself. This fixes the label not taking advantage of all the width the
icon provides, and also a few cases where icons were misaligned.
2016-02-24 11:15:02 +01:00
Carlos Soriano 27c62f297e preferences: rework preferences window
With designers guidance, rework the preferences window to a better state.
Also, do few improvement on the way, like converting it to a GtkWindow.
2016-02-12 18:19:38 +01:00
Carlos Soriano a88310dd21 search: use a separate view setting for search
So we can select what type of view do we want for search independently
of what we normally use.

This is needed since we default to switch to list view for search, but
we would like to allow users to select a different view. However,
instead of adding a preference in the preference dialog, we can do it
more straightforward and change the setting when we are in search.

On the way, rework all the enums and views id for a saner code...
2016-02-12 17:52:24 +01:00
Piotr Drąg 6a181f48a6 Small improvements to translatable strings 2016-02-07 13:22:38 +01:00
Carlos Soriano a256967e55 search: rename recursive to local and remote
For clarity.
2016-02-03 16:33:55 +01:00
Carlos Soriano 52f491671d search-popover: use gsettings for last/modified filter type
We weren't syncing the last used/ last modified setting in the search
popover when changed location, which means the query didn't get the
last used user choice.
We don't want however to listen to a gsetting key and change every
ongoing search, so instead what we do is get the setting for the
initial creation of a search, and then every user change will set
the gsetting value, but will only affect the next created searches, not
the ongoing ones.
2016-02-02 22:22:38 +01:00
Georges Basile Stavracas Neto 80f8cba489 settings: add setting to track remote search on remote locations
Remote locations by default don't handle recursive search, since
it has high costs associated. We can't, however, neglect the ability
to search recursively on those folders, nor share the same setting
with common folders too.

To fix that, add a new setting called "enable-remote-recursive-search"
which will be used by the next commits to properly implement recursive
search for remote locations.
2016-02-02 20:43:04 +01:00
Richard Hughes 26de383e38 Add a missing tag to the AppData file 2016-01-25 16:38:14 +00:00
Richard Hughes 042e7a1edd data: Add GNOME project group to the AppData file 2016-01-22 14:54:27 +00:00
Richard Hughes ba968d806b data: Upgrade the AppData file to the 0.7+ version and add some missing data 2016-01-22 14:31:28 +00:00
Razvan Chitu a3a7ac81b7 files-view: add create link menu item for selected files
The menu item for this feature was removed in previous versions of nautilus.
A context menu item for creating links from copied files was added, but some
users prefered to create links from selected files.

Since this is demanded, implement the menu action for it and use the gsetting
added in the previous commits.

https://bugzilla.gnome.org/show_bug.cgi?id=745575
2015-12-24 16:06:48 +01:00
Razvan Chitu 0eef08686f files-view: add optional menu item for creating links
The menu item for creating links was removed in previous versions of nautilus
since it exposes a concept of the file system that is not really clear.
However, we don't have a working solution yet for the use cases that creating
links is a workaround, so we didn't remove the functionality altogether.

We were allowing link creation with a shortcut and with the middle button while
performing a drag and drop operation. However, some users would need to use a
context menu action instead of a drag and drop operation, which usually is less
convenient and prone to errors.

Since this is demanded, implement the menu action for it and add a gsetting
preference to show it in the context menu for those users who like to have it
there.

Also the new implementation uses the code that is already used for other
operations, improving the implementation compared to the previous one.

In an upcoming patch we add the UI for the preference dialog.

https://bugzilla.gnome.org/show_bug.cgi?id=745575
2015-12-22 15:40:09 +01:00
Carlos Soriano 9d3e07c6d4 gschema: move to /data
To be more clear and follow a similar structure than gedit.

Also remove tabs sneakily...
2015-12-16 13:00:19 +01:00
Cosimo Cecchi 3896e27b3d Add kudos to appdata file
As requested by Richard Hughes.
2015-12-07 14:11:54 -08:00
Carlos Soriano a44b4996fa desktop file: specify new window action
So Gnome Shell is aware of it and can activate it.
Until now Gnome Shell was guessing it was able to open a new
window given the app.new-window action. However, what Gnome Shell
does in this case is just call activate of the application, which
is not the "new-window" action for nautilus, and instead only presents
the current window.

One can argue that Gnome Shell should not try to guess the available
actions to, after that, instead of using them, just activate the
application.

https://bugzilla.gnome.org/show_bug.cgi?id=756370
2015-11-12 22:51:46 +01:00
Carlos Soriano 3946214747 remove leftovers of connect to server 2015-08-21 11:34:52 +02:00
Cosimo Cecchi 5951fadbef Remove saved search mimetype association
It's not used anymore.
2015-01-24 02:06:03 +01:00
Richard Hughes 6253b01ba8 data: Rename the AppData file after the desktop ID change
The filename has to match the ID name for various optimisations.
2014-08-01 17:26:54 +01:00
Cosimo Cecchi 3c5eb05d41 data: remove obsolete files
I can't even understand what these were useful for.
2014-06-02 17:40:07 -07:00
Cosimo Cecchi 2b16d1c2f5 data: rename desktop file name in appdata XML 2014-04-30 18:25:19 +02:00
Cosimo Cecchi 39b4fc320b search-provider: don't own a separate bus name
This is not needed anymore, now what we're fully dbus activatable.
2014-04-30 11:08:26 +02:00
Cosimo Cecchi a5617016d3 application: make DBusActivatable 2014-04-30 11:08:26 +02:00
Bogdan Petcu 278d024666 data: remove the OnlyShowIn line
These days, Nautilus is just an application, so don't forcefully limit
our visibility to GNOME/Unity.

https://bugzilla.gnome.org/show_bug.cgi?id=721833
2014-02-17 12:17:57 -08:00
Daniel Mustieles e314fbcc99 Updated FSF's address 2014-01-31 14:13:48 +01:00
Cosimo Cecchi 16b1cfb967 appdata: remove screenshot for now
The one that was used is tiny and ugly. Remove it while we find a proper
solution to keep screenshots consistent and up to date.

https://bugzilla.gnome.org/show_bug.cgi?id=722691
2014-01-21 18:22:34 -08:00
Daniel Mustieles ab1a589898 Added AppData file 2014-01-21 14:09:08 +01:00
Elad Alfassa cf65e25acd Fix .desktop file categories so that nautilus will show up in gnome-software
gnome-software uses the desktop file categories to sort the applications
it shows.

This commit fixes the categories according to the freedesktop spec,
so that nautilus will appear in the correct category.

For more information:
http://standards.freedesktop.org/menu-spec/latest/apa.html
http://standards.freedesktop.org/menu-spec/latest/apas02.html
2013-09-03 13:19:57 +03:00
Marco Trevisan (Treviño) 49115b8526 NautilusFreedesktopDBus: add public setter for OpenLocations
https://bugzilla.gnome.org/show_bug.cgi?id=694266
2013-03-04 10:53:25 +01:00
Marco Trevisan (Treviño) ce4255cf15 NautilusApplication: add --new-window commandline to force the old behavior
Calling nautilus with -w or --new-window always opens a new window.
Desktop file updated, to use this parameter as default.

https://bugzilla.gnome.org/show_bug.cgi?id=694034
2013-03-04 10:50:35 +01:00
Cosimo Cecchi b3434e8bec data: add nautilus-classic.desktop
This is needed to have nautilus autostarted with desktop icons in the
classic session.
2013-02-06 13:37:38 -05:00
Matthias Clasen 0ee7f3b67e Add notification hint to the destop file
This tells gnome-control-center to show nautilus in the search
panel.
See https://live.gnome.org/GnomeGoals/NotificationSource

https://bugzilla.gnome.org/show_bug.cgi?id=690995
2013-01-14 10:14:47 -05:00
Cosimo Cecchi e6b70a2cb8 shell-provider: use the right signature for LaunchSearch() 2012-12-10 16:52:36 -05:00
Cosimo Cecchi 9f90af0138 shell-provider: don't use a separate binary
Since NautilusApplication is a service, we can now handle searches and
windows coming and going indipendently just fine.

This also allows us to launch a search directly from the search provider
very easily.
2012-12-06 16:24:35 -05:00