Re: [Usability]Keeping the Quit menu item



On Wed, Mar 19, 2003 at 06:09:36PM -0500, Havoc Pennington wrote:
> On Wed, Mar 19, 2003 at 05:21:48PM -0500, Ettore Perazzoli wrote:
> > On Wed, 2003-03-19 at 16:41, Havoc Pennington wrote:
> > > The user model for "Quit" involves the idea of a process. If you don't
> > > know what a process is, you can't understand what that menu item does.
> > 
> > No, this is wrong.  "Quit" involves the idea of an application, not of a
> > process.  "Quit" means "quit the application", not "quit the process". 
> > In most cases it's the same thing, but the user doesn't care.  He just
> > wants to quit the application -- i.e. "Evolution" vs.
> > "/usr/bin/evolution".
> 
> What do you mean by "the application"?

What *I* mean by application is all the windows related to
Evolution Calendar, or all the windows related to Galeon.
When I Quit an application I want all those windows to Go
Away (maybe we should rename Quit "Go Away" or "Get me the
hell outta here"?).  There are perfectly legitimate reasons
you would want to do that, including that you might have
installed a new version of the program.

It's funny that nobody seems to have a fast definition of
Application, but GNOME is littered with the term.  For
example GNOME Terminal has a type of Application in the
launcher properties and the context menu offes "Help on
Terminal Application" and also I have it listed in my
"Prefered Applications" under my "Applications" menu!

> I agree we have such a concept, but it isn't clear to me that the
> concept of application that we have is a thing that can be started and
> stopped (or quit, or switched to). I don't have any object on the
> screen that represents "the application," that can be operated on.
> What would it mean to "start gnome-terminal the application" vs. 
> "open a gnome-terminal window"? Does that mean anything?

No.  As far as the user is concerned each terminal window is
a separate application, because they are completely
independent.  It wouldn't make sense to have a "Quit GNOME
Terminal".  However, it would be handy to have a "Close all
GNOME Terminal Windows" function *somewhere*, because that
is a lot easier than holding Ctrl-D and waving the mouse
around.

> Is there any reason in the user model to believe that exiting "the
> application" will remove anything from memory, or forget any cookies,
> or otherwise be a worthwhile thing to do? Would I want to exit all
> gnome-terminal windows at once?

You might if you had managed to accumulate hundreds of them.
In the user model the user might want to stop and
application altogether because he was using version 2.5 and
he just installed version 3.0.  Presumably the user did that
with the expectation of something happening.

> My idea of an application is something like "a kind of window" or
> "functionality provider" - a kind of window to use to view/edit a
> particular file, a kind of window that has separate Preferences, a
> kind of window that's available when you install a particular piece of
> software.
> 
> You can't "start" or "quit" a kind of window. "Close all terminal
> windows" seems clear, "quit terminal" doesn't really (I bet people
> would be surprised if "quit terminal" closed all their terminal
> windows - if I added that menu item I bet I'd get flamed hard the
> first time someone used it, in fact).

Agreed.

> I'm using the terminal as an example precisely because it
> traditionally has one process per window, and so people expect Quit to
> map to the window. ;-) Which shows that understanding Quit has
> traditionally involved processes, not kinds of window or
> functionality.
> 
> There's simply no reason I see why I'd Quit Evolution for example,
> other than to exit the Evolution process. If I don't want an Evolution
> window, I'd just close it. Why would I Quit instead? If there's a
> reason for Evolution, what makes gnome-terminal or nautilus different?

Why not?  I'd Quit Evolution because I was done reading
email.  What am I going to do now?  I'm going to *Quit*
reading my email!

Same for the GIMP: I'd like to *Quit* working on these damn
photographs!  Get me outta here!

> I'd like to clarify the application vs. window based issue more, it's
> a useful discussion. We should start on a higher level there though, 
> not on the Quit menu item. ;-)
> 
> One interesting point is that Evolution is kind of different from some
> of the other examples (browser, office suite) - it has this concept of
> an "Evolution Window" that can be a calendar or todo list or mailbox,
> and I can "File->New->Evolution Window" - and there's a way inside the
> app of switching between calendar/tasks/mailbox. While one might
> expect to have three apps that are integrated but you switch between
> and launch them using the normal desktop mechanisms.

For Evolution, I wouldn't expect my Calendar to go away when I
Quit reading my email, but I would expect three different
Calendar windows to go away if I Quit the Calendar.  Perhaps
the concept of Quit should be tied into the concept of
windows providing all the same functionality.  For example,
Evolution windows could provide Evolution.Calendar or
Evolution.INBOX or Evolution.Compose.  Quitting one
Evolution.Calendar would quit them all, but leave the
Evolution.Compose windows untouched.

Again, the GIMP.  Suppose I have 8 GIMP windows: the
toolbox, five views of one file, and two views of another.
The toolbox would provide GIMP, while the five windows would
provide GIMP.foo.png, and the other two would provide
GIMP.bar.png.  If I Quit in one of the five foo.png windows,
what I mean is "Quit editing foo.png", and all five windows
should go away.  If I Quit from the toolbox, what I mean is
"Quit editing images altogether."

Terminals are all independent so they would all provide
Terminal.pid or whatever.  You don't usually want anything
from one Terminal bothering anything in another Terminal.
However I think it would still be useful if the window
manager could close up all Terminal* windows.

-jwb



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