diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 73171a95..c49c9cdb 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -40,6 +40,7 @@ Peter Saveliev Richard Miller Rob Kroeger Rob Pike +Roger Peppe Russ Cox Sean McKean Shenghou Ma diff --git a/src/cmd/devdraw/x11-srv.c b/src/cmd/devdraw/x11-srv.c index 04ecabee..b9343913 100644 --- a/src/cmd/devdraw/x11-srv.c +++ b/src/cmd/devdraw/x11-srv.c @@ -619,6 +619,12 @@ runxevent(XEvent *xev) break; case FocusOut: + /* + * Some key combinations (e.g. Alt-Tab) can cause us + * to see the key down event without the key up event, + * so clear out the keyboard state when we lose the focus. + */ + kstate = 0; abortcompose(); break;