Redesign the file selection dialog
The GtkFileChooserDialog was introduced in GTK+ 2.4, and it looked a lot like the OSX file selection dialog that slide out of the application window:
The original design took into consideration the best of what the desktop OS of the time provided, and settled into a simple design with a file name entry and a location on disk, with the capacity to expand to reveal a side bar for shortcut and tree navigation, and a file list for the chosen directory. It's important to note that macOS has changed their file selection dialog over the past 15 years.
Over the years, the file selection dropped the collapsible design and instead focused on getting on par with a file manager design, to the point that it shares widgets with Nautilus. This approach has reached the point where it'd be almost easier — for the maintainers of the toolkit, at the very least, who are constantly pushed to get features into an already overblown and complex file selection implementation and API — to spawn Nautilus (or any other file manager conforming to a simple IPC API) instead of having a file selection dialog inside GTK+.
As much as it would be easier on the people maintaining the toolkit, I think this is a Bad Idea™. File selection and file management are two separate activities, with very different contexts. File selection is a means to a goal; it's very self-contained, and while it might have some management aspect (rename a file to avoid a collision, create a new directory to save the file into) it's fundamentally a task with a definite end; a person using an application is either trying to open a file to work on it, or they are trying to save a file after working on it. File management is more typically an open-ended task, like writing a document, or editing an image: the file manager is the application you're using, and the task at hand is to move, rename, search, or delete files from storage.
After 15 years of piling things into the file selection dialog, we should consider the idea of going back to a simpler user interaction model, that is targeted towards selecting a file, or a directory:
- easter eggs like tab completion should not be part of the file selection dialog, as they complicate the key navigation aspect of the dialog
- the side bar should not contain every single possible location in the hope that it gets more visibility
- the file management operations should be minimal: rename, create directory, delete; anything else should be deferred to a file manager, through a shortcut to launch it in the currently selected folder
Additionally, we have better widgets, these days, and we can create better UIs with progressive disclosure than we could, 15 years ago.