Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • Files Files
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 472
    • Issues 472
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 40
    • Merge requests 40
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GNOME
  • FilesFiles
  • Issues
  • #771
Closed
Open
Created Nov 27, 2018 by Andrew Chadwick@achadwick

Missing UI for changing and using the default sort order

As requested in #636 (closed), please can UI be added for changing the default sort order, and for configuring folders to use it?

Use cases

  • Researcher and busy data manager Alice collaborates with her departmental colleagues using shared network drives, which she navigates with Nautilus 3.30. Her office uses a defined and regularly updated yyyy/mm/dd/category folder structure for new data as it comes in, and Alice manages a lot of projects that work just like that. The new Sort → Last Modified menu item works well for all of her work, but it doesn't seem to "stick" when she changes it. She has to fiddle with the menu for each new day, and each new category. What's going on here? Alice hates having to change the sort order for each new folder when it appears.

  • Freelance photographer Bob stores his files on his laptop, but he's in pretty much the same pickle as Alice. Like a lot of photographers, he stores his RAW files in a folder structure with locations and dates in it. Bob doesn't get on with photo management software, and tends to make notes about clients' requirements in the folder structure itself. It's a pretty loose structure really, built up over the years. He selectively archives folders and files which haven't been updated for a while from this tree into cloud storage to save space. He needs to switch between icon view sort orders quite regularly, and then bounce between folders looking at them in the same way.

Desired behaviour

Both Alice and Bob need a way of changing Nautilus's two default sort order settings, namely:

  • org.gnome.nautilus.preferences
    • default-sort-order
    • default-sort-in-reverse-order

The preferences item for changing the first of these settings went away in b1392c7a, with a promise that the menu should offer it to the user instead. There has been no adequate replacement since. There never has been UI for changing the second preferences item.

Now that we have the nice view-specific dropdown, it's time to revisit this bit of gradual feature erosion. It can be addressed quite efficiently now. I believe the current approach is to offer sort options in the view dropdown, so I suggest adding two new menu items, separated by a divider:

A cropped view of a Nautilus window showing the view dropdown for the icon view. The two new mocked-up menu items are surrounded by a roughly drawn outline in pinkish-red.

The new menu items in the mock-up above are:

  1. "Use Default" radio item. This is a new option for sorting the current folder. It corresponds to the GVFS metadata attributes metadata::nautilus-icon-view-sort-by and metadata::nautilus-icon-view-sort-reversed being both undefined. In this state, the folder sorts according to the DSO (provided !366 (merged) is applied if you're using master 😀)

  2. "Save Sort as Default" simple menu item. This is separated from the sort actions for spacing reasons and because it is not a valid choice for sorting. It is a oneshot action which reads the current folder-specific order and reversed flag and writes it into the DSO.

Item 2 should also be visible in the list view. When the current view is a list view, it should read from the nautilus-list-view-sort-column and nautilus-list-view-sort-reversed instead, and write those to the DSO settings.

Open question

  • Should "Save Sort as Default" also make the current folder "Use [the] Default" sort order?

Benefits of the solution

  • This allows users to change the default sort order, and whether the current folder uses it.
  • Users coming from systems where there is just one sort order and it's the default are more comfortable.
  • Users who need just one behaviour for all folders are less frustrated.
  • Users who have change the sort order for lots of folders to get back the old behaviour after being bitten by #636 (closed)

Possible drawbacks

  • The UI is a little bit more complicated.

As a way of managing this, we can use clustering and adjacency to keep the DSO-related items together as per the mockup. This provides something of a visual and discursive explanation of what's what. I don't claim anyone thinks like me, but the potential questions "what does 'Default' mean?" and "how do I set that?" seem to be answered in a condensed bit of screen space. ("Aha! It's the default sort order because it's listed next to the other ones!", and "Oh here it is, right under the sort options.")

  • Conceptually it's still complex.

This is about the best way I can think of to manage two different sort orders, one of which is a fallback for the other. Things would be much simpler if there was just one sort default order, or just one sort order for each view! 😉

(But seriously. The model is complex and weird, and it could be simplified. A weird and over-fussy model can cause bad UI. Making each folder have its own sort order is glaringly fussy compared to the rest of Nautilus's stripped-down design.)

Edited Dec 16, 2020 by António Fernandes
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking