At the moment it is a bit hit & miss whether the Escape key closes a window, although I got the impression that it may be used more in later OS4 releases.
But sometimes I don't want the Escape key to close a window, and loose everything I've done, because it can be easy to accidentally press the Escape key!
One example of this is OS4's Calculator, where the Escape key close it instantly, loosing any calculations I was working on. Another is Filer, where (by default) the Escape key closes it instantly, loosing any folder location (and file selections) I was working on.
But othertimes it seems that pressing the Escape key to close a window would be handy. For example, if I accidentally opened the Calculator. Or if I have finished reading something using Multiview.
I think there needs to an Amiga Style Guide to cover this behaviour, so that it is consistent & non-annoying. I would suggest that programs which allow the user to input data (which would typically be saved - but not in the case of Calculator or Filer) should check with the user (with a requester) before closing due the Escape key being pressed... unless there is nothing to loose (for example the Calculator shows 0 & has no tape window open, for example Filer has no files selected (and it should store the current folder in a global 'recently accessed folders' list)). Otherwise it is reasonable to close without checking whether the user really meant to press the Escape key.
SimpleMail offers an alternative solution: It immediately closes the window I was entering an email on, but saves it in the Outgoing (i.e. draft) folder. Although I personally think there should be some indication it has done this (otherwise the user might think they have lost it), say by moving the view to the Outgoing folder, or perhaps a Ringhio message.
(In any case, the GUI system should most definitely NOT automatically convert the Escape key into a "Close window" event. At least not without the program author first asking for it.)
MUI apps seem to automatically have the Esc key as close window functionality. Personally I'm happy with RAmiga-K which is much harder to accidentally press.
I wouldn't add Esc as a window close function unless (a) I was already reading key presses and (b) there is no risk of the user losing anything at all.
Esc is good for cancelling requesters, beyond that I'd treat with extreme caution; it's too easy to catch when reaching for a mug of coffee
Indeed, youre right here. Some Style Guide (updated) is needed urgently.
I feel very sad about OS4 inheriting more and more ugly behaviour of other OSes.
The use of Escape for closing windows is one of them.
It would have been a wiser choice to use any other key for this (e.g. function keys or Amiga key combinations which were used for more than 20 years now!). Users should become used to them, finally. Theyre using AmigaOS, not Windoze!
Escape is meant to be used in situations, where a user wants to "escape" from a program state he doesnt want to be in, not to "escape" the program itself. So its the task of the application to react on Escape adequately, not the task of the OS GUI.
@ChrisH Another reason why Escape might be accidentally pressed is that I might be trying to close some stupid "Please insert volume X:" requester (which can happen 4 times in a row with Filer), and in a hurry press it once too often. Grrr.
Or I press Escape, thinking that one window is active, without realising that another has recently been activated instead (perhaps by some other inadvertant key/mouse press).
ANOTHER annoying feature (nothing to do with Escape) are "hotkeys" which don't require a qualifier key pressed. So for example I might press the "d" key in SimpleMail, without realising I had accidentally changed the active window (happened to me many times!), and then an email gets deleted. And because I didn't realise this was happening, I have no clue what keyS I pressed, and so don't know what might have happened (and probably wouldn't know the hot keys even if I did). All hotkeys should require a qualifier, at least unless they are totally non-destructive.
You've absolutely right with that ESC key, but in some situations it comes in handy, like quitting multiview or close a tab under OWB.
But upon losing your current work/session, it's better that a particular program can pop up a requester when pressing the ESC key, likewise when you are pressing Amiga+Q.
To Be A True Adventurer, You Ought To Play Real Text Adventures
As you realized already, its never a good idea to start a "terminating action" with a single key. RAmiga + Q or RAmiga + K (for closing windows) is the better choice. No "accident" possible ;) And still fast operation, if needed.
Regarding SimpleMail, AFAIK some SimpleMail development people are reading here... maybe its possible to equip the delete function with a "are you sure?" requester, even if one wants to delete a single mail? Immediate Delete without a backup is a frustrating thing sometimes...
Escape is meant to be used in situations, where a user wants to "escape" from a program state he doesnt want to be in, not to "escape" the program itself.
Quite right, and that is the opinion of the OS4 devs as well. It's OK to use ESC to close a requester, but not the main application window.
Multiview is an obvious offender in this example, and there are plenty of other applications that are just as bad.
On the other hand, having a (standard) key to close a window is really a feature I wouldn't want to loose. Should it be ESC or another shortcut? I don't know. But I must admit that not being required to use the mouse to close a window is really a power feature (especially when you think that AmigaOS was able to be wholly controlled by keyboard only out of the box since years if not the beginning).
Wouldnt be necessary, if programmers would obey the rules stated in the Amiga User Interface Style Guide you mentioned ;)
Its clearly stated there, that applications should listen to certain standard shortcuts, RAmiga + K is one of those...
I think the problem here is, that too many people inherit bad GUI + coding style from other platforms and dont obey the Style Guide rules (although some of them demand such a style guide, revised).
This should be mentioned in bug reports, over and over. Until developers change their mind, and make their code more user + OS friendly.
I've added quitting with Esc to all of my apps because I hate long distance KB shortcuts like ramiga+Q. Maybe lamiga+Esc or lamiga+Q would be better. I can understand closing one window only if the program is a commodity. But with normal apps closing the main window should quit the whole app always.
Quote:
Multiview is an obvious offender in this example, and there are plenty of other applications that are just as bad.
Multiview could be exception. At least as long as it doesn't have any browsing buttons.
Btw. I have one feature request for Multiview. Because it's possible to set inactive windows to have different alpha setting. But Multiview is mainly used to show pictures so such program should have always full visibility overriding GUI prefs settings IMHO.
Rock lobster bit me - so I'm here forever X1000 + AmigaOS 4.1 FE "Anyone can build a fast CPU. The trick is to build a fast system." - Seymour Cray
Why bother with esc key when you can set closing windows on CTRL + Esc like I set it up on my still working Amiga in Dopus Magellan. Esc for closing only is not very useable for me as it can close acidently something I don't want...
@djnick My point is that Esc to close a window should NOT be the defaul behaviour (usually), but that it would be easy to add this behaviour using a commodity, should someone want it. And in that case it would also be possible to use a different key(s) than Escape.
Thats the point... some applications dont ask, if you "escape" them. And its very likely that more applications will come (mostly ports), which doesnt ask either.
Thats why a single keystroke for a terminating action is so dangerous and should not become standard for AmigaOS (in fact, it shouldnt be "standard" at all).
I dont see the point in naming RAmiga + Q "complicated". I bet you often use even more complicated hotkey combinations, consisting of two or even three keystrokes. Commodities are an example for this.
I really dont understand why people insist on closing a program being "not complicated", if all you need to do is pressing two keys or move the mouse and click the left button.
As I said, there are much more "complicated" keystrokes in alldays use.
having a single key-press which closes your program without confirmation is brain-dead, and shows that the program has never been used properly. Bad, bad, bad, bad, bad. Especially in an app like Calculator which looks like any other calculator app, except other apps use Esc to clear the window (a very common command), so anyone using more than just AmigaOS Calculator will get very frustrated very quickly.
Multiview and things aren't too bad - they're viewers. There's no work to lose. But in any app which maintains a state which would be lost by quitting, the app should never quit on a single keypress.