Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(15)

Issue 1801363005: Fix bug of input.ime.onKeyEvent on Linux. (Closed)

Created:
4 years, 9 months ago by Azure Wei
Modified:
4 years, 9 months ago
Reviewers:
Shu Chen
CC:
chromium-reviews, nona+watch_chromium.org, James Su, shuchen+watch_chromium.org, yusukes+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

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 Committed: https://crrev.com/be0623024074fe925eb82e7956e75f897f3fa204 Cr-Commit-Position: refs/heads/master@{#381671}

Patch Set 1 #

Total comments: 4

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : Update comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+33 lines, -5 lines) Patch
M ui/base/ime/input_method_auralinux.h View 1 2 3 4 1 chunk +14 lines, -1 line 0 comments Download
M ui/base/ime/input_method_auralinux.cc View 1 1 chunk +19 lines, -4 lines 0 comments Download

Messages

Total messages: 13 (6 generated)
Azure Wei
Please review this cl! Thank you!
4 years, 9 months ago (2016-03-17 06:31:05 UTC) #3
Shu Chen
https://codereview.chromium.org/1801363005/diff/1/ui/base/ime/input_method_auralinux.cc File ui/base/ime/input_method_auralinux.cc (right): https://codereview.chromium.org/1801363005/diff/1/ui/base/ime/input_method_auralinux.cc#newcode110 ui/base/ime/input_method_auralinux.cc:110: filtered, composition_changed_, composition_, result_text_); I think this is wrong. ...
4 years, 9 months ago (2016-03-17 06:37:09 UTC) #4
Azure Wei
https://codereview.chromium.org/1801363005/diff/1/ui/base/ime/input_method_auralinux.cc File ui/base/ime/input_method_auralinux.cc (right): https://codereview.chromium.org/1801363005/diff/1/ui/base/ime/input_method_auralinux.cc#newcode110 ui/base/ime/input_method_auralinux.cc:110: filtered, composition_changed_, composition_, result_text_); On 2016/03/17 06:37:08, Shu Chen ...
4 years, 9 months ago (2016-03-17 07:02:37 UTC) #5
Shu Chen
lgtm
4 years, 9 months ago (2016-03-17 07:11:56 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1801363005/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1801363005/80001
4 years, 9 months ago (2016-03-17 07:30:45 UTC) #9
commit-bot: I haz the power
Committed patchset #5 (id:80001)
4 years, 9 months ago (2016-03-17 08:13:37 UTC) #11
commit-bot: I haz the power
4 years, 9 months ago (2016-03-17 08:31:28 UTC) #13
Message was sent while issue was closed.
Patchset 5 (id:??) landed as
https://crrev.com/be0623024074fe925eb82e7956e75f897f3fa204
Cr-Commit-Position: refs/heads/master@{#381671}

Powered by Google App Engine
This is Rietveld 408576698