summaryrefslogtreecommitdiff
path: root/src/meson.build
AgeCommit message (Collapse)Author
2026-06-05general: Use libgxdpKhalid Abu Shawarib
2026-05-23app-chooser-widget: Import GtkAppChooserWidget from GTKKhalid Abu Shawarib
2026-05-10view-controls: Handle sort section directlyPeter Eisenmann
The sort section only changes when the location changes. The previous behavior of hiding it when there is no view is covered by the menu button being insensitive in such cases. Drop the now unused ToolbarMenuSection struct.
2026-03-10eel: Remove EelKhalid Abu Shawarib
Eel is a library that was used in Files for a long time. It used to be a seperate library, but then the source got checked into Files's repository. It used to provide the main code for the view and its elements before the GTK4 transition, and other utilities that were replaced by GLib. Its usage slowly erorded as more code was moved out or replaced, until there was little left. Now we move the last bit left relating to timed wait dialogs into ui utilities. With that, Eel directory is eliminated. Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/331
2026-02-01properties: Rename to widgetPeter Eisenmann
2026-01-31grid-view-captions-dialog: Add a dialog for grid view captionsKhalid Abu Shawarib
This is to move it from preferences to the view menu, like the columns chooser in list view.
2026-01-30general: Use BlueprintPeter Eisenmann
Blueprint is a markup language for GTK user interfaces, that has several benefits over XML UI files. The simpler syntax makes it easier to read and write, which should improve readability and reviewability of UI changes. This commit adds the Blueprint compiler as a subproject and converts all XML UI files into the Blueprint format, with the exceptions of menu-only definitions. It also cleans up the created Blueprint files to account for the issues reported in [1]-[4]. The menu-only UI files use features not supported by Blueprint, such as action target types and submenu links. As they mostly consist of flat lists, keeping them as plain GTK UI files shouldn't be too confusing for contributors. In case Blueprint should ever stop being supported, the generated files can be used to revert to XML based UI files. [1] https://gitlab.gnome.org/GNOME/blueprint-compiler/-/issues/202 [2] https://gitlab.gnome.org/GNOME/blueprint-compiler/-/issues/237 [3] https://gitlab.gnome.org/GNOME/blueprint-compiler/-/issues/238 [4] https://gitlab.gnome.org/GNOME/blueprint-compiler/-/issues/240
2026-01-09build: Add glycin dependencyPeter Eisenmann
This will be used to replace deprecated usages of GdkPixbuf.
2026-01-09build: Drop unused icon-info from autorun execPeter Eisenmann
2025-12-30Drop deprecated Nautilus.FileOperations interfacePeter Eisenmann
The DBus interface org.gnome.Nautilus.FileOperations was deprecated in version 3.37 (2020) with the introduction of its successor org.gnome.Nautilus.FileOperations2. Fixes https://gitlab.gnome.org/GNOME/nautilus/-/issues/2773
2025-12-26mime-actions: Use generic-icon-name for video testPeter Eisenmann
Drop the mime type list in favor of checking for the generic icon name returned by shared-mime-info.
2025-12-26file-operations: Use AdwAlertDialogPeter Eisenmann
Add an AdwAlertDialog-based helper function to present a dialog with responses. It supports showing an additional text, along the heading and body texts, so it can be used as a replacement for file operation dialogs. A response enum is used to indicate which responses to present and which response was chosen. The enum values can be combined as bit flags to represent multiple responses. The order of responses is thus fixed. Responses that represent an "All" action have to be passed explicitly, making it clear when such responses will be presented. `run_dialog()` also returns a response enum value, allowing for more verbose response comparisons. Fixes #2900
2025-11-19image: Create a new const-size async loading image widgetKhalid Abu Shawarib
2025-11-14search-provider: Simplify finished signalPeter Eisenmann
The provider status is not used anymore, this drops it and gives the signal a more unique name.
2025-11-10general: Use tinyspaql includesPeter Eisenmann
Instead of previous tracker includes. Also bump required localsearch version to assure these includes are available.
2025-10-02build: Add search-popover headerPeter Eisenmann
2025-10-02meson: Sort sources and dependenciesPeter Eisenmann
2025-08-17sidebar: Integrate as normal filesPeter Eisenmann
2025-08-17sidebar: Rename and integrate type enumsPeter Eisenmann
2025-08-17build: Cleanup enum headersPeter Eisenmann
2025-08-02Add DateRangeDialogPeter Eisenmann
This dialog allows to select a date range by using two of the previously introduced DateEntryRows. If the Select button is pressed a date range is created which can be queried by subscribing to the "close-attempt" signal. If the dialog is simply closed, or somehow has an invalid date range, the date range is NULL.
2025-08-02Add NautilusDateEntryRowPeter Eisenmann
This row allows to select a date by either typing or selectiong one from a calendar popover. It provides a "date-time" property that can be listened to for changes.
2025-07-18files-view: Drop NautilusView interfacePeter Eisenmann
NautilusFilesView was the only implementation of NautilusView, so the interface only added indirections and code complexity. Some users of the interface already relied on the implementation being a FilesView.
2025-06-14Rename tracker-related classes to localsearchPeter Eisenmann
2025-06-04date-utilities: Add initialization for libicu locale and formattersKhalid Abu Shawarib
Introduce the ICU library support and add initialization functions.
2025-04-16batch-rename-dialog: Port to ListViewMarkus Göllnitz
This port tries to stay as close as possible to the original version using GtkListBoxes where it makes sense. The port is already large enough. However, that leaves room for subsequent changes. For example, the created labels could be created at setup and reused between bound rename items. Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2025-02-03appdata: Make sure translations are in resourcesPeter Eisenmann
This is strongly inspired by [1] and was pointed out by Matthijs Velsink (@velsinki) on chat. [1] https://gitlab.gnome.org/GNOME/gnome-control-center/-/commit/0799aa7880ca15435d959c182bc77be5d35ab88b
2024-11-13window: Load About Dialog info from appdata fileFelipe Borges
By using AdwAboutDialog.new_from_appdata we can populate the About dialog with information from the appdata file. This is useful for downstreams that use of appdata overwrites to change info such as support questions and issue tracker addresses.
2024-08-05file-chooser: Introduce new window classAntónio Fernandes
We want to reuse most of our window widgets in the FileChooser dialog, but we cannot use the actual NautilusWindow class for a few reasons: * It's a GtkApplicationWindow subclass, and we don't want FileChooser dialogs to be treated as part of the Files app while invoked from other apps. * FileChooser dialog, as a modal, is expected to behaver differently from NautilusWindow is many ways. * FileChooser doesn't need a tab bar and tab view, progress indicator, nor many other features from NautilusWindow. And the reverse is also true, as the FileChooser dialog has an always-on bottom toolbar and a different adaptive design for narrow windows. As such, we introduce a new toplevel window class (NautilusFileChooser) which is a new composite widget that reuses internal components of the NautilusWindow class. This FileChooser window features a sidebar, a top toolbar, a view (as part of a single NautilusWindowSlot instance), and a bottom toolbar. So, it looks similar, but not exactly the same, as NautilusWindow. At this point, this window class is still unused and inert. It's going to get fuctional and going to be used by NautilusPortal next commit. More about the code design rationale at https://gitlab.gnome.org/GNOME/nautilus/-/work_items/3402 Part of https://gitlab.gnome.org/GNOME/nautilus/-/issues/3401
2024-08-05portal: Introduce implementation stubAntónio Fernandes
From now on nautilus claims to implement the FileChooser portal. For now it's a lie. But the next few commits will make it true.
2024-08-04nautilus-preferences-window: Rename to nautilus-preferences-dialogAutomeris naranja
NautilusPreferencesWindow is a dialog since the previous commit.
2024-08-03general: Add xdp-gnome imported code to the buildAntónio Fernandes
Make it a private static library to be used in commming commits. Contrary to upstream, we use the imported *.impl.* definitions. For convenience (not to move a lot of meson code around), define the HAVE_GTK_WAYLAND and HAVE_GTK_X11 in config.h instead of compiler flags.
2024-08-03view-item-filter: Introduce filter for FileChooserAntónio Fernandes
Instead of reimplementing GtkFileFilter, which conveniently takes the GVariant format from the FileChooser portal interface, let's wrap it with a filter of our own which translates NautilusViewItem into a dummy GFileInfo.
2024-08-03minimal-cell: Create minimal cell objectKhalid Abu Shawarib
This object will be used as a small object to store data in its properties for use as an object for GListModel.
2024-06-10window: Limit managed shortcuts to :childAntónio Fernandes
In order for some window-level shortcuts to trigger on a FileChooser dialog, which do not belong to NautilusApplication, we need to stop using gtk_application_set_accels_for_action() and set the shortcuts directly on widgets. While at it, their GtkShortcutScope is to be changed from `GLOBAL` to `MANAGED`. This gives us an opportunity to fully control their scope and, thus, prevent them from being triggered while, e.g., an AdwDialog is up. Related to https://gitlab.gnome.org/GNOME/nautilus/-/work_items/3411
2024-06-02network-view: Introduce new view and cellsAntónio Fernandes
This is the replacement for the Other Locations. See https://gitlab.gnome.org/GNOME/nautilus/-/issues/2785
2024-06-02recent-servers: New recycled objectAntónio Fernandes
2024-06-02network-address-bar: Recycle widgetry (step 2/2)António Fernandes
The new design for Network view uses an address entry bar which is similar to the one from Other Locations view. Instead of reinventing the wheel, let's salvage some code. In addition to formatting the code to nautilus style, this also makes a couple of visual changes to match the design requests. https://gitlab.gnome.org/GNOME/nautilus/-/issues/2785
2024-06-02gtkplacesview: Remove from buildAntónio Fernandes
Now that NautilusPlacesView is gone, we don't use this anymore. But there is quite a bit of recycleable code here. So, let's take this out of the build pipeline in order to disassemble it freely.
2024-06-02general: Remove Other LocationsAntónio Fernandes
It's going to be replaced with a new Network view.[0] For now this removes only the direct support in nautilus code proper. The code imported from GtkPlacesView is kept to be recycled for a new purpose. [0] https://gitlab.gnome.org/GNOME/nautilus/-/issues/2785
2024-06-01network-directory: Introduce new directory subclassAntónio Fernandes
This aggregates files from two sources: * network:// for discoverable network resources * computer:// for remote mounts and volumes For the second case, we need to filter out local mounts and volumes. For the time being, this is implemented by relying on the the icon names, until a new file attribute is provided by GVFS.
2024-06-01internal-place-file: Introduce new file subclassAntónio Fernandes
Instead of special casing the NautilusFile for the starred:/// URI, give it a proper display name as part of a new specialized subclass. This is prepared to handle more cases, like the upcoming Network view.
2024-05-24sidebar: Replace gtkbookmarksmanager with nautilus-bookmark-listCorey Berla
2024-05-19general: Rename NautilusFileQueue to NautilusHashQueuePeter Eisenmann
2024-02-02scheme: add check for internal schemesPeter Eisenmann
2024-01-28view-info: Introduce shareable headerAntónio Fernandes
NautilusListBase and its subclasses need these ids, but will soon stop including nautilus-view.h (through nautilus-files-view.h), when they become child widgets instead of subclasses of NautilusFilesView
2024-01-28progress-paintable: Copy from ephyCorey Berla
Ephy has a beautiful circular progress bar, let's use that instead of reinventing the wheel. This will be part of the sidebar operations.
2023-12-20date-util: add date to string helperPeter Eisenmann
Move date formatting to new date-utilities file, to allow it being called from other places too. The new file also handles reacting to changes in date related preferences. More functionality will be added/moved to this file in a future commit.
2023-12-04window-slot: Factor out fd holding into helper objectAntónio Fernandes
This is needed because this code is about to become more complex.
2023-12-02general: drop -controller suffix from filenamesPeter Eisenmann
Analogous to the previous commit, drop the '-controller' suffix from filenames.