On Sun, Mar 29, 2009 at 01:55:13PM -0500, Chris Adams wrote:
Once upon a time, Matthew Garrett <mjg(a)redhat.com> said:
> I don't know about you, but I prefer my text editors not to save to disk
> on every keystroke.
Stop exagerating; that's not required. Any decent X program _should_
handle saving data if it loses its connection to the X server. Killing
the server does not terminate all the clients without notice. And guess
what, many (most?) do. For example, if I kill X, the next time I start
Firefox, it asks if I want to restore my previous session (which it
dutifully saved away) or start a new one.
Firefox does this by saving its session every time you hit a new page.
It's actually remarkably difficult to handle the "My X server has gone
away" case - traditional xlib behaviour is to just abort() your process.
You can do some funky stuff involving signal handlers and longjmp, but
by and large it's not practical to save app state when the server is
killed. Especially if your application isn't an X one and just happens
to run in a console.
So far, your arguments are "I should be able to hit any random
key at
any time and not cause any problem" and "applications are so broken they
can't handle an unusual condition and so need to save state at every
change". Both of those are stupid.
I should be able to hit a key without it having a surprising behaviour
that closes all my applications without any sort of confirmation, yes.
ctrl+alt+backspace was always a poor choice from this perspective.
--
Matthew Garrett | mjg59(a)srcf.ucam.org