Commit graph

203 commits

Author SHA1 Message Date
Jeremy Bicha 9908a4dbb5 build: Require libadwaita >= 1.2.beta
split-button dropdown-tooltip was added in
https://gitlab.gnome.org/GNOME/libadwaita/-/commit/750669170da2529
2022-08-08 23:59:20 +00:00
António Fernandes 1047113cd9 Post release version bump 2022-08-08 11:38:18 +01:00
António Fernandes 3b4a1a31bd Release version 43.beta.1 2022-08-08 11:01:39 +01:00
Jeremy Bicha d97f112734 extension: Bump extensiondir to 4
Closes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/2417
2022-08-08 09:34:18 +00:00
António Fernandes ff2268ae01 Post-release version bump 2022-08-07 05:43:05 +01:00
António Fernandes 33855b7b15 image-properties: Don't depend on GTK
GdkPixbuf is enough here.
2022-08-07 01:14:22 +00:00
Ondrej Holy 9dcb29db7b flatpak: Add libcloudproviders dependency
The libcloudproviders dependency is now mandatory. Let's add it in
the manifest.
2022-08-06 12:40:58 +00:00
Ondrej Holy 673e6b157a sidebar: Build with cloudproviders support
The cloudproviders integration used to be part of GTK 3 version, but
it is not part of GTK 4 version. This is because the sidebar codes
are now	part of	Nautilus codebase and `HAVE_CLOUDPROVIDERS` is never
set. Let's allow to build with cloudproviders support again.

Related: https://gitlab.gnome.org/GNOME/nautilus/-/issues/2392
2022-08-06 12:40:58 +00:00
António Fernandes 1e4a25e22a Post-release version bump 2022-07-09 19:56:53 +01:00
Christopher Davis f35496b07d window: Port about to AdwAboutWindow 2022-07-09 17:57:05 +00:00
António Fernandes b28e2d545d view-icon-controller: Abstract sharable code
The new list view is going to be GtkColumnView-based, so it's going to
share some code with the GtkGridView-based view.

In order to avoid code duplication and still keep the NautilusFilesView
class agnostic of the widgets used by final classes, create an abstract
NautilusListBase class.

But this abstract class needs to interact with the item widgets, which
are going to be different between views. To resolve this, an abstract
NautilusViewCell class is created for the item widgets, which is also
going to be used for the new list view column cells.

Also, bump GLib version requirement now that we use GSignalGroup.
2022-06-21 19:55:00 +01:00
Jeremy Bicha 794931998c Drop libportal option
This is a follow up from https://gitlab.gnome.org/GNOME/nautilus/-/commit/6af38c29d

As a result of that commit, it's not possible to set a picture as desktop wallpaper
from Nautilus unless libportal is used. Since libportal is generally available,
it's no longer a useful option to not use libportal.
2022-05-26 15:19:04 -04:00
António Fernandes ca933ebbf7 gtk-code-generator: Drop it
We've deviated from the upstream source enough for this script to no
longer operate.

From now on we should just cherry-pick changes as needed, at least
while we try to stay close to the GTK code.
2022-05-02 11:18:58 +01:00
Michael Catanzaro 4420025e7f thumbnail: update for gnome-desktop thumbnail API changes
See gnome-desktop!132
2022-04-11 15:58:12 -05:00
Maximiliano Sandoval R ed911e8275
meson: Use gnome.post_install 2022-02-28 22:20:19 +01:00
Maximiliano Sandoval R 035a95ea19
meson: Update to 0.59 2022-02-28 22:20:17 +01:00
Maximiliano 8bea51e173 general: Use proper license identifiers
GPL3+ is a deprecated SPDX identifier.[0] The meson and about dialog say
GPL 3.0, so that should also appear on the appdata.

[0] https://spdx.org/licenses/
2022-02-28 18:42:00 +00:00
António Fernandes 71d5cd95e7 Post branch version bump 2022-02-12 01:11:33 +00:00
António Fernandes 1ea635aaf6 Post release version bump 2022-01-09 03:39:51 +00:00
António Fernandes e358c2343c general: Switch to GTK4
The new major version of the toolkit is a requirement to fix old issues and enable future enhancements.

Update symbols and adapt logic to API changes.
Update and simplify UI definitions.
Update local copy of places sidebar and places view.
Replace dependencies with their GTK4-compatible successors.
Make a minimum changes required to build and run, with known
regressions to be fixed in future commits.

For a detailed breakup of the changes, see the 36 commits-deep
log leading to d5763facb1e5045251171ed1273dca0859f3542f.

This is the main part of https://gitlab.gnome.org/GNOME/nautilus/-/issues/276
2022-01-09 01:25:39 +00:00
António Fernandes b4f70a8872 build: Drop libgd dependency and submodule
We want to use to GTK 4, but libgd depends on GTK 3 and we can't link
against 2 API-incompatible versions of GTK due to symbol conflicts.
2021-12-26 18:12:29 +00:00
António Fernandes 55cfd66ccc general: Add libportal-gtk3 dependency
The portal-gtk3.h header has been moved into a separate library which
binds gtk3 explicitly.

https://github.com/flatpak/libportal/pull/53
2021-12-25 16:29:44 +01:00
António Fernandes 87b93eb803 Revert "general: Add libportal-gtk3 dependency"
This reverts commit ae752ea078
2021-12-21 23:30:27 +00:00
António Fernandes ae752ea078 general: Add libportal-gtk3 dependency
The portal-gtk3.h header has been moved into a separate library which
binds gtk3 explicitly.

https://github.com/flatpak/libportal/pull/53
2021-12-21 17:42:27 +00:00
Nishal Kulkarni 0dfaaaeecd extensions/image-properties: Replace deprecated functions
Build log contains deprecation warnings for gexiv2 functions.
Replaced `gexiv2_metadata_has_tag()` with
`gexiv2_metadata_try_has_tag()` and `gexiv2_metadata_get_orientation()`
with `gexiv2_metadata_try_get_orientation()`

Closes: #2033
2021-12-04 22:54:14 +00:00
Ondrej Holy 5cc496ae59 Post branch version bump 2021-10-30 09:11:46 +02:00
Ondrej Holy 6737425d9c Post release version bump 2021-09-17 13:16:43 +02:00
António Fernandes 997e33fda3 Post release version bump 2021-09-03 22:01:32 +01:00
António Fernandes d4794fdfd5 Post release version bump 2021-08-14 14:00:56 +01:00
Ondrej Holy 156a68cf52 compress-dialog: Add support for encrypted .zip
Currently, it is not possible to create encrypted archives over
Nautilus. Let's add support for encrypted .zip files to not have
to install a dedicated archive manager.

Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/822
2021-08-10 11:20:25 +00:00
Ondrej Holy 55aed9b74f Post release version bump 2021-07-09 17:12:20 +02:00
Ondrej Holy 8c5fa3eb08 extensions/image-properties: Replace deprecated symbols
The build log contains warnings about deprecated gexiv2 functions. Let's
port to the new API, unpin exiv3 and gexiv2 dependencies in flatpak manifests
and bump the build dependency accordingly to get rid of the warnings.
2021-07-09 15:46:59 +02:00
António Fernandes 59ca11451b Post branch version bump 2021-05-22 19:02:43 +01:00
Ondrej Holy 7058f1e247 Post release version bump 2021-04-30 15:34:04 +02:00
Ondrej Holy 48b8297db6 Post release version bump 2021-03-20 09:25:42 +01:00
Ondrej Holy 63fce9f8cf Release version 40.0
I made 40 release yesterday by mistake. Let's use 40.0 instead to
ensure the correct sort order.

Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/1807
2021-03-20 09:23:53 +01:00
Ondrej Holy 6ec0584745 Post release version bump 2021-03-19 14:54:30 +01:00
Ondrej Holy 47062f8155 Post release version bump 2021-03-13 09:13:28 +01:00
Ondrej Holy c652d4d4cc Post release version bump 2021-02-13 16:46:48 +01:00
Ondrej Holy 9012c36da8 build: Bump libhandy dependency
Nautilus currenlty crashes with libhandy version older than 1.1.90.
Let's bump the dependency to prevent that.
2021-02-13 16:46:48 +01:00
Ondrej Holy bb79dade98 build: Bump gnome-autoar dependency
This is needed to prevent the "signal 'request-passphrase' is invalid
for instance '0x1e41340' of type 'AutoarExtractor'" warnings.
2021-02-12 16:08:04 +00:00
Adrien Plazas 2b3b51df23 general: Use libhandy 1.0
It provides widgets we need for the enhancements in the next commits.
2021-02-09 00:47:56 +00:00
Maxim Mikityanskiy f29b483918 file-operations: Preserve mtime of non-empty directories on move
Nautilus follows this algorithm when copying or moving directories:

1. Create the destination directory.
2. Copy/move the old directory contents recursively.
3. g_file_copy_attributes from the old directory to the new.
4. Delete the old directory.

The issue is that when moving a non-empty directory, step 2 leads to
modification of the old directory's mtime, so g_file_copy_attributes
copies the attributes that were already lost at that point.

This commit fixes it by splitting g_file_copy_attributes into two steps.
It depends on glib!1449.

Closes: gvfs#471
Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
2021-01-09 16:33:49 +02:00
Ondrej Holy 96b4668770 Post release version bump 2021-01-08 16:45:11 +01:00
António Fernandes 44c1b9f3b5 meson.build: Don't suffix VERSION with '-stable'
It is visible in the about dialog and may be wrong.

Closes https://gitlab.gnome.org/GNOME/nautilus/-/issues/940
2021-01-05 07:07:57 +00:00
Felipe Borges 7cab1cd762 build, flatpak: Add libportal dependency
Fixes #795
2020-11-18 15:30:13 +00:00
Ondrej Holy d584123d76 Post branch version bump to 40.alpha
Let's switch to the new versioning scheme:
https://discourse.gnome.org/t/new-gnome-versioning-scheme/4235
2020-10-02 14:37:52 +02:00
Ondrej Holy 8ed4a28f28 Release version 3.38.1 2020-10-02 14:18:30 +02:00
Ondrej Holy 5f1b9200cf Release version 3.38.0 2020-09-11 15:40:10 +02:00
Ondrej Holy b6f39cf87d Release version 3.37.92 2020-09-04 15:13:41 +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
Sam Thursfield 452c25e33a build: Set NAUTILUS_DATADIR correctly 2020-09-02 12:17:31 +02:00
Ondrej Holy f3977e8aa0 Release version 3.37.91 2020-08-21 08:18:38 +02:00
Ondrej Holy 975b666363 Release version 3.37.90 2020-08-07 13:35:33 +02:00
Joshua Lee b2211f6f79 build: Bump GLib version
This is required to avail of g_clear_signal_handler().
2020-07-08 19:37:17 +01:00
Ondrej Holy 8e295e3a6c gtk: Update to the latest codes
GTK-based codes are not up-to-date. Let's run gtk-code-generator.sh
to update them. But also update the script to remove the unwanted
marshalers. Finally, this doesn't bring any functional changes, but
it adapts our script to the latest GTK codes. Let's add a comment
in meson.build to not forget doing this regularly...
2020-07-03 15:51:59 +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 b79a55d552 Release version 3.37.2 2020-05-29 15:36:27 +02:00
Marvin Schmidt 294c89d0f3 meson: Remove libX11 dependency
As of commit 70393e321 (general: Allow to compile on Wayland-only
system) libX11 is no longer a dependency
2020-05-01 19:39:03 +00:00
Ondrej Holy f27842e80b Release version 3.37.1.1
I made .1 release by mistake before some time. Let's make .1.1 release
now to be still in sync with the GNOME release schedule.
2020-04-24 15:56:46 +02:00
Ondrej Holy f5ad501568 Release version 3.37.1 2020-03-27 15:04:01 +01:00
Ondrej Holy 57ab299638 Post branch version bump 2020-03-09 08:24:31 +01:00
Ondrej Holy e11034204b Release version 3.36.0 2020-03-06 15:42:04 +01:00
Ondrej Holy 0770a8d9e1 Release version 3.35.92 2020-02-28 14:05:26 +01:00
Ondrej Holy 188fb40858 Release version 3.35.91.1
Let's make .1 release as I forgot to bump the version in meson.build.
2020-02-14 17:25:49 +01:00
Ondrej Holy 1c63464719 Release version 3.35.90 2020-01-31 12:47:38 +01:00
Ondrej Holy 11088272dd Release version 3.35.2 2019-11-22 13:47:17 +01:00
Ernestas Kulik 6a55af66af Release version 3.34.0 2019-09-10 14:57:44 +02:00
Ernestas Kulik a43726a7af Release version 3.33.90 2019-08-06 16:41:28 +02:00
Ernestas Kulik 3862cf7980 general: Drop in-tree copy of gnome-desktop
The code was copied to avoid having an external GTK+ 3 dependency, but
at this point it’s more trouble than it’s worth.
2019-06-28 15:49:15 +02:00
Ernestas Kulik 7605b17b27 meson.build: Disable GLib deprecation warnings 2019-06-02 11:32:31 +02:00
Emmanuele Bassi 4d94d188ef Define symbol needed for gnome-desktop
The copy-paste of libgnome-desktop's thumbnailing code is missing a
symbol that is defined by the libgnome-desktop build, which breaks
Nautilus's own build.
2019-04-14 13:31:06 +01:00
Carlos Soriano a241f8f6f3 release: Prepare for 3.32.0 2019-03-13 13:14:26 +01:00
Jordan Petridis b4d200fed3 file: replace eel_ref_str with GRefString
glib now offers a reference counted api.
This allows us to replace a lot of legacy code and get rid of
eel_ref_str. GRefString [1] is almost a drop-in replacement.

nautilus-file-operations.c was indirectly depending upon
eel/eel-string.h from nautilus-file-private.h and thus
a new include was added.

This bumps the minimum version of glib to 2.58

Close #781
https://gitlab.gnome.org/GNOME/nautilus/issues/781

[1] https://developer.gnome.org/glib/stable/glib-Reference-counted-strings.html
2019-02-22 11:29:57 +00:00
Mart Raudsepp 44b49e6ca0 meson.build: Add 32-bit sparc to seccomp unsupported list
32-bit sparc doesn't support seccomp either.
2019-02-16 07:45:09 +00:00
Bastien Nocera e9bb1cff99 Add copy/paste of totem's properties window nautilus extension
The code is quite stable and this is basic functionality which is going to be
better in Nautilus rather than relying on extensions, given the quite bad
extension system Nautilus has.

This will also help with the port to gtk4, so we rely in yet another important
extension providing properties pages (which in turn export gtk3 widgets).
2019-02-11 16:03:55 +01:00
Carlos Soriano fc796bb9b8 release: Prepare for 3.31.90 2019-02-06 17:11:42 +01:00
Ernestas Kulik 4614584c24 meson.build: Clean up profile stuff 2018-12-10 14:20:46 +00:00
Carlos Soriano 85c86bd55d meson: Handle correctly the Devel suffix 2018-12-10 14:15:48 +00:00
Ernestas Kulik 4c2e9da9a9 meson.build: Pass -Wno-error=maybe-uninitialized
The nightly flatpak builds after
ce54a25275
fail due to an unfortunate combination of compiler flags. This commit
disables the error, since it’s rather inconsistent when the warning is
spit out.
2018-10-31 21:47:59 +01:00
Ernestas Kulik 62e6db2767 meson.build: Only warn when seccomp support is disabled 2018-10-09 15:36:37 +03:00
Ernestas Kulik 942429b133 meson.build: Use set instead of set10
Since we only care about whether those macros are defined, we can use
set to save a few lines.
2018-10-09 11:01:37 +03:00
Ernestas Kulik e97155f1d1 meson.build: Remove libseccomp dependency where unsupported
A number of CPU architectures are unsupported as far as seccomp goes.
This commit expands the current restriction to Linux by checking the
host CPU.
2018-10-09 11:01:37 +03:00
Ernestas Kulik 0718606dca meson.build: Enable -Werror=incompatible-pointer-types 2018-10-09 07:29:41 +00:00
Carlos Soriano 437992efcd meson: Bump version
Seems we use 0.47 features.

Closes https://gitlab.gnome.org/GNOME/nautilus/issues/612
2018-09-05 10:46:45 +00:00
Carlos Soriano fb4fe5c705 release: Prepare for 3.30.0 2018-09-03 19:31:11 +02:00
Ernestas Kulik db92b6a6cf Prepare for 3.29.92 2018-08-29 18:33:49 +03:00
Carlos Soriano dde5d529d0 meson: Bump version 2018-07-26 21:23:12 +02:00
Ernestas Kulik 67b6843130 meson.build: Fix application ID
application_id is referenced in data/meson.build, so it’ll be less
annoying to append the profile to it as well.
2018-07-14 15:11:05 +03:00
Ernestas Kulik a9b76916e4 meson.build: Tidy sections up
Now sections (and their boundaries) are more visible, and maybe the file
is more readable all around.
2018-07-14 13:35:24 +03:00
Carlos Soriano d31b8b59de general: Assume development profile if app id is not Nautilus
Instead of checking explicitly for some options, we allow any value as
profile and assume is a development snapshot.

This will help with having Flatpak bundles/refs of different branches
with different purposes.
2018-07-14 11:33:57 +02:00
Carlos Soriano 09f00407eb Meson: Make sure _GNU_SOURCE is set
_GNU_SOURCE is required to be able to use POSIX functions that are not
available on non-Linux system. Specifically, we use sys/types for
requesting user accounts with getpwent and similars.

Usually systems seems to compile with this set, however some systems
like RHEL doesn't assume it so.

Since this is more correct to set it explicitly, this commit does that
by passing an argument to meson project.
2018-06-12 09:14:45 +00:00
Carlos Soriano b42ffe73a6 meson: Request c11 when possible
So we make sure that systems that have this default to something older
like c89 like RHEL can build it properly.
2018-06-12 09:14:41 +00:00
Ting-Wei Lan 816ee3d5f3 build: Make seccomp and bubblewrap optional
Both seccomp and bubblewrap are specific to Linux, so we should make it
optional to keep Nautilus working on non-Linux systems.
2018-06-03 00:00:49 +08:00
Ernestas Kulik 894cda329c build: Warn on duplicate conditions in conditional statements
Since we’re handling duplicate branches, this makes sense.
2018-05-28 12:59:33 +03:00
Ernestas Kulik 81c4c0d175 meson.build: Enable deprecation warnings 2018-05-22 16:52:49 +03:00
Ernestas Kulik bde55f4189 eel: Remove a11y utilities
In theory, it would be possible to just drop the GAIL code and keep the
header, but, given that NautilusCanvasItem is the only remaining
consumer, the needed bits can be moved over.
2018-05-22 16:52:48 +03:00
Ernestas Kulik 673c81cf9f general: Copy gnome-desktop thumbnailing code
This is one of prerequisite steps to take before fully switching to GTK+
4, as gnome-desktop has code, depending on GTK+ 3. Since the
thumbnailing machinery is self-contained, it can easily be just copied
over.
2018-05-22 16:52:48 +03:00