Hello, AWT team.
Please review the fix for the following issue:
http://bugs.sun.com/view_bug.do?bug_id=8010009
The fix is available at:
http://cr.openjdk.java.net/~pchelko/8010009/webrev.00/
The problem occurred because we use input methods for plugin keyboard input. So
when the text from the input method comes only KEY_TYPED events were
synthesized. Now we also synthesize KEY_RELEASED events. Additionally, the last
keyCode should be stored because some swing code relies on the keyCode for the
KEY_RELEASED event.
There still are 2 issues around this:
1. Firefox has a very strange behavior when user types extremely fast.
KeyReleased events come from the browser, while they should not according to
the NPAPI specification. I suppose it is a bug in Firefox. I did not add any
workaround for this issue, because I there is no way to add it safely. The
workaround could possible break the existing code. So I suppose it is better to
file a bug to Mozilla.
2. The game from Pogo does not expect some possible combinations of
events coming and skips squares if you type for example " 'r " . This should
probably be filed to Pogo Games.
With best regards. Petr.