From 73b0f029e107c2d015ebb48d59d32f264973de49 Mon Sep 17 00:00:00 2001 From: David Jeannot Date: Mon, 16 Jan 2012 17:08:31 -0500 Subject: devdraw: fix handling of compose key on OS X This implementation is simpler to understand. It removes conflicts with other modifiers and with the virtual buttons. Pressing alt during a sequence now cancels it correctly. R=rsc CC=plan9port.codebot http://codereview.appspot.com/5507049 --- src/cmd/devdraw/cocoa-srv.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src/cmd/devdraw/cocoa-srv.c') diff --git a/src/cmd/devdraw/cocoa-srv.c b/src/cmd/devdraw/cocoa-srv.c index ac6658ef..864aed7a 100644 --- a/src/cmd/devdraw/cocoa-srv.c +++ b/src/cmd/devdraw/cocoa-srv.c @@ -358,15 +358,25 @@ kputc(int c) zunlock(); } +static int alting; + +void +abortcompose(void) +{ + if(alting) + keystroke(Kalt); +} + void keystroke(int c) { static Rune k[10]; - static int alting, nk; + static int nk; int i; if(c == Kalt){ alting = !alting; + nk = 0; return; } if(!alting){ -- cgit v1.2.3