Re: Lost keypresses [was Re: GGI and cli/sti in X]

Martin Mares (mj@atrey.karlin.mff.cuni.cz)
Wed, 1 Apr 1998 12:05:09 +0200


Hello, world!\n

> > there is nothing the kernel can do about lost keypresses or anything
> > else.

> Lost keypressess are definitely linux's design problem: As long as
> X handle switch-out requests itself, it is going to be there.

> Keys you press after Ctrl-Alt-F1 and before X realizes it needs
> console switch are lost by design. I'm currently solving it by making
> Alt-FX work even in raw mode (then race goes away.)

Maybe this could help:

(1) Make X server use the medium-raw mode.

(2) Make kernel send `up' events for all currently pressed keys
to the `old' console and `down' events for them to the `new'
console during console switch. We probably should preserve
key press order which makes this things a bit non-trivial.

> Q: Is making second set of keys (Ctrl-Alt-F1..F12) marked as 'console
> switch even in raw mode' acceptable?

Will it help?

> Also, until X use medium raw mode & kernel is modified, shift state
> will be lost accross console switches. I'm thinking of forcing X into
> medium raw, but it is hard...

Another idea: Make a bitmap of currently pressed keys available to apps
and make X fetch that after console switch.

> Q: Do you think we can force X not to use full raw mode?

I didn't look at the code yet, but I think it should be possible.

Have a nice fortnight

-- 
Martin `MJ' Mares   <mj@ucw.cz>   http://atrey.karlin.mff.cuni.cz/~mj/
Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth
"If at first you don't succeed, redefine success."

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu