Nautilus vs gnome-shell and the future



With gnome-shell being the direction that Gnome is going with for 3.0
I've been thinking some about how this affects nautilus, and how file
management should work with gnome-shell.

The current ideas behind the design of nautilus is that its the main
way to access files. By this I mean everyday stuff like finding and
opening your files, rather than "file management" (reorganizing files,
copying files, etc). This together with the desktop having links to
important places (as well as being a repository for currently worked
on files) makes this a sort of "desktop shell" in the sense that its
how apps are launched to a large degree. This is also why spatial mode
is the default for the desktop icons (and why browser mode is
availibile in the menus as "File Browser" for those times you want to
do intense file management).

However, in the gnome-shell design a lot of the things nautilus is
currently used for (locating and opening files) is integrated into the
shell and mixed together with the ui for locating and starting
applications. This makes a lot of sense to me as launching
applications and opening files with an application are closely related
actions, and a merged UI could do a lot better than the current sort
of double UI with the panel launching apps and the desktop launching
files. The shell also wants to de-emphatize the desktop as a place for
storing files in use and launching links, for good reasons (read the
design paper[1] for details).

This leads to two initial conclusions from my side. First of all we
should disable the drawing of the desktop by default. Second we should
default to browser mode. This might seem a bit suprising since I've
generally been on the spatial side. But, this has mainly been because
I've seen nautilus as much more used as a kind of file activation
shell rather than a hardcore file manager, and when that changes the
rationale for spatial mode change too.

This is a slight change in focus for nautilus, as its now to a larger
degree used when the user wants to do more complex file
operations. I think with this we can feel more confident that
for instance the split-view branch would fit better into
nautilus. Another thing is that we have more screen space now by
default, which I'd like to use to do a more expressive UI. For
instance, I've long wanted to do a metadata/tags/live-preview pane
somewhat like:

http://2.bp.blogspot.com/_Xie1ydrCav4/RdH5i6KvUOI/AAAAAAAAACk/NMXxtde1198/s1600-h/nautilus-metadata-tile-5.png

There are still a bunch of questions as to how nautilus and
gnome-shell should work together:

For instance, gnome-shell focuses a lot on using search to find files
and other things of interest. Nautilus also does search, but only
for files. The g-s search is more integrated in the desktop and gives
multiple types of results, but the nautilus search allows a more
detailed view of the results (multiple view types, previews, etc) and
also allows more interesting operations on the results (file ops,
nautilus extensions like sendto, etc). Maybe we could integrate these
better, or at least make them more similar?

With the desktop gone we don't have a place for shorttime "storage" of
actively used files. There is "recent files" which is accessible from
the activities overview, but the activities view is very much a
"launch some new activity" thing rather than something you actively
work with during an activity. For instance, your current app is zoomed
out and you lose all possibility to interact with it and the recent
files with e.g. drag and drop.

I'd like to add some way to put files (file references really)
somewhere in the shell UI. Maybe just drag them to the side to make a
pile or a drawer. That way you could temporary put the files you're
working there and work on them easily from multiple apps. This does
require quite a bit of cooperation between the shell and nautilus
though in order for the files in the shell to have a look and
behaviour like that of nautilus (same icons, same operations, etc).

In fact, this is a general problem for the shell. The files as
represented in the shell UI just isn't as expressive as they are in
nautilus. You can't get their sizes, emblems, there is no open with
menus, extensions, scripts, property dialogs, etc. I'm not saying we
want all this in the shell, just that what the shell does for files is
not always enough, sometimes you want more, and we need to make sure
nautilus can take over in a nice fashion when you need it.

Another question is how we reformulate the UI for selecting spatial
mode. Right now its a checkbox for enabling "Always open in browser
windows", and rather than just having this True by default i'd like to
somehow have a checkbox to enable spatial mode. I just can't think of
a good way to describe spatial mode in the UI. Does anyone have an idea?

With nautilus not handling the desktop there really is no reason to
run all of nautilus all the time. Its currently needed for the
automount handling, and its possible to turn on daemon mode so it can
do this even if the desktop is not visible. However, this seems a bit
unnecessary, so we should try to factor out the automount stuff to a
separate binary.

Gnome-shell will not be the default in the next gnome release (2.30),
but since this kind of large changes take a long time to design and
stabilize I'm thinking we should probably start to work towards this
already in this release.


[1] http://live.gnome.org/GnomeShell/Design

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Alexander Larsson                                            Red Hat, Inc 
       alexl redhat com            alexander larsson gmail com 
He's a bookish vegetarian dog-catcher She's a provocative thirtysomething 
hooker from a family of eight older brothers. They fight crime! 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]