Review request for 7142565 - [macosx] Many special keys processed twice in text fields

Anton V. Tarasov anton.tarasov at oracle.com
Wed Feb 8 01:49:00 PST 2012


Hello,

Please review a fix for 7142565.

webrev: http://cr.openjdk.java.net/~ant/7142565/webrev.0/

Key-equivalent events (typically with modifiers, but not only) are delivered to NSWindow with
performKeyEquivalent: The latter always returns NO (to let NSWindow process system key events like
Cmd+Q). According to the spec "if a key-equivalent is not recognized, NSWindow sends it as an
NSKeyDown event to the first responder". (However, it doesn't send NSKeyDown for Control-key
events.)

Instead of inspecting a key-equivalent event to determine if it should be propagated further or not,
another simple workaround is suggested. It's to store a pointer to the latest processed key event in
AWTView and compare the current event to the previous one. In case the event objects are the same,
ignore the second (current) one.

Thanks,
Anton.




More information about the macosx-port-dev mailing list