aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS1
-rw-r--r--src/cmd/devdraw/x11-srv.c6
2 files changed, 7 insertions, 0 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 73171a95..c49c9cdb 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -40,6 +40,7 @@ Peter Saveliev <svinota.saveliev@gmail.com>
Richard Miller <millerresearch@gmail.com>
Rob Kroeger <robkroeger@gmail.com>
Rob Pike <robpike@gmail.com>
+Roger Peppe <rogpeppe@gmail.com>
Russ Cox <rsc@swtch.com>
Sean McKean <smckean83@gmail.com>
Shenghou Ma <minux.ma@gmail.com>
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;