When there is an IME extension listening on input.ime.onKeyEvent, the key...
When there is an IME extension listening on input.ime.onKeyEvent, the key event will be passed to the extension before the OS handling it, and ProcessKeyEventDone() will be called after the extension calls input.ime.keyEventHandled. When users texting fast, the callback method of ProcessKeyEventDone() may be excused in different orders. The current implementation has bugs as the variables in system such as |composition_changed_| and |result_text_| will be changed when input.ime.keyEventHandled trys to run the callback. This bug only occurs on Linux as there are two keydown/keyup events generated when pressing/releasing the key and only one event is passed to the extension. This CL fixes this bug by adding helper function ProcessKeyEventByEngineDone() in InputMethodAuraLinux to recover the passed environment. BUG=517773 TEST=None Review URL: https://codereview.chromium.org/1801363005 Cr-Commit-Position: refs/heads/master@{#381671}
Showing
Please register or sign in to comment