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

Issue 2500663002: Relay Text Field Updates from ContentView to External InputMethodManager. (Closed)

Created:
4 years, 1 month ago by bhallam
Modified:
3 years, 7 months ago
CC:
agrieve+watch_chromium.org, chromium-reviews, darin-cc_chromium.org, jam, yabinh
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Relay Text Field Updates from ContentView to External InputMethodManager. This change surfaces up all ExtractedText updates from the content view back to the InputMethodManager. Is is applicable to allow consumers of the Android InputManager to receive text change events back. This change does not affect Standard Input Method Managers such as the Android Default Keyboard registered to the platform but specifically affects External Input Method apps like virtual floating keyboard implementations or screen keyboard overlay implementations. In addition this change is consistent with the guidelines given as part of https://developer.android.com/reference/android/view/inputmethod/InputConnection.html States that if the GET_EXTRACTED_TEXT_MONITOR flag is set, you should be calling updateExtractedText(View, int, ExtractedText) whenever you call updateSelection(View, int, int, int, int). BUG=673819 TEST=New ContentShellJunitTests, Existing ContentShell Instrumentation Tests. Review-Url: https://codereview.chromium.org/2500663002 Cr-Commit-Position: refs/heads/master@{#470488} Committed: https://chromium.googlesource.com/chromium/src/+/9b5ebac3230f3c90782296ae95396e7f512729bc

Patch Set 1 #

Patch Set 2 : 1. Added ImeAdapter Junit Tests 2. Rebased on Tip of Master 3. Fixed logic to continiously request … #

Patch Set 3 : Minimize CL size #

Total comments: 10

Patch Set 4 : Addressed cl comments from changwan #

Patch Set 5 : minimize patch size #

Total comments: 12

Patch Set 6 : Addressing aelias@'s comments #

Patch Set 7 : Removing unused method and annotating package private fields with @VisibleForTesting #

Total comments: 4

Patch Set 8 : Addressing comments and ensuring that we stop sending extracted text when InputConnection is reset … #

Total comments: 4

Patch Set 9 : Rewriting Unit test set-up to use IME thread for execution and cleaning up logic for ThreadedInputC… #

Total comments: 15

Patch Set 10 : Refactoring Unit tests with the recommended Public API pattern for ThreadedInputConnectionTests #

Total comments: 2

Patch Set 11 : Modify ThreadedInputConnection#resetOnUiThread cleanup logic to be invoked via handler. #

Total comments: 2

Patch Set 12 : Using thread safe TextInputState reference within ThreadedInputConnection#updateSelection #

Messages

Total messages: 49 (17 generated)
bhallam
On 2016/11/11 23:36:40, bhallam wrote: > mailto:bhallam@amazon.com changed reviewers: > + mailto:aelias@chromium.org Hi Aelias, Can ...
4 years, 1 month ago (2016-11-11 23:38:42 UTC) #3
bhallam
On 2016/11/11 23:38:42, bhallam wrote: > On 2016/11/11 23:36:40, bhallam wrote: > > mailto:bhallam@amazon.com changed ...
4 years, 1 month ago (2016-11-11 23:59:36 UTC) #4
bhallam
Hi Aelias, Can you PTAL at this patch. Thanks! Mohit
4 years, 1 month ago (2016-11-18 20:05:54 UTC) #5
bhallam
Hi changwan, Can you PTAL at this CL. Thanks! Mohit
4 years, 1 month ago (2016-11-22 00:13:14 UTC) #8
Changwan Ryu
Hi bhallam, Thanks for making this change. Could you also add some tests to ImeTest.java ...
4 years ago (2016-11-24 05:45:09 UTC) #9
bhallam
On 2016/11/24 05:45:09, Changwan Ryu wrote: > Hi bhallam, > > Thanks for making this ...
4 years ago (2016-11-30 18:28:23 UTC) #10
bhallam
On 2016/11/30 18:28:23, bhallam wrote: > On 2016/11/24 05:45:09, Changwan Ryu wrote: > > Hi ...
4 years ago (2016-12-13 18:36:34 UTC) #11
Changwan Ryu
https://codereview.chromium.org/2500663002/diff/40001/content/public/android/java/src/org/chromium/content/browser/input/ImeAdapter.java File content/public/android/java/src/org/chromium/content/browser/input/ImeAdapter.java (right): https://codereview.chromium.org/2500663002/diff/40001/content/public/android/java/src/org/chromium/content/browser/input/ImeAdapter.java#newcode511 content/public/android/java/src/org/chromium/content/browser/input/ImeAdapter.java:511: could you move this inside ThreadedInputConnection? Then you don't ...
4 years ago (2016-12-21 23:47:58 UTC) #13
bhallam
On 2016/12/21 23:47:58, Changwan Ryu wrote: > https://codereview.chromium.org/2500663002/diff/40001/content/public/android/java/src/org/chromium/content/browser/input/ImeAdapter.java > File > content/public/android/java/src/org/chromium/content/browser/input/ImeAdapter.java > (right): > ...
3 years, 11 months ago (2017-01-23 21:42:41 UTC) #14
bhallam
Hi Changwan, Can you please take a look at the latest CL. Thanks! Mohit Bhalla ...
3 years, 11 months ago (2017-01-24 18:42:19 UTC) #15
bhallam
Hi aelias, Can you PTAL at this CL. Thanks bhallam
3 years, 10 months ago (2017-02-04 00:25:01 UTC) #17
aelias_OOO_until_Jul13
https://codereview.chromium.org/2500663002/diff/80001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java File content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java (right): https://codereview.chromium.org/2500663002/diff/80001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java#newcode101 content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java:101: final ExtractedTextRequest mExtractedTextRequest = new ExtractedTextRequest(); This isn't needed ...
3 years, 8 months ago (2017-04-27 00:46:52 UTC) #18
bhallam
Addressing CR comments https://codereview.chromium.org/2500663002/diff/80001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java File content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java (right): https://codereview.chromium.org/2500663002/diff/80001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java#newcode101 content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java:101: final ExtractedTextRequest mExtractedTextRequest = new ExtractedTextRequest(); ...
3 years, 7 months ago (2017-04-27 23:31:43 UTC) #19
aelias_OOO_until_Jul13
https://codereview.chromium.org/2500663002/diff/80001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java File content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java (right): https://codereview.chromium.org/2500663002/diff/80001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java#newcode220 content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java:220: void updateSelection(Range selection, Range composition) { On 2017/04/27 at ...
3 years, 7 months ago (2017-04-27 23:53:20 UTC) #20
Changwan Ryu
One thing that isn't quite clear - should we keep sending extracted text even after ...
3 years, 7 months ago (2017-04-28 00:16:57 UTC) #21
bhallam
On 2017/04/28 00:16:57, Changwan Ryu wrote: > One thing that isn't quite clear - should ...
3 years, 7 months ago (2017-04-28 21:44:35 UTC) #22
aelias_OOO_until_Jul13
https://codereview.chromium.org/2500663002/diff/140001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java File content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java (right): https://codereview.chromium.org/2500663002/diff/140001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java#newcode91 content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java:91: private int mCurrentExtractedTextRequestToken = 0; nit: remove "= 0", ...
3 years, 7 months ago (2017-04-28 22:07:40 UTC) #23
bhallam
https://codereview.chromium.org/2500663002/diff/140001/content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java File content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java (right): https://codereview.chromium.org/2500663002/diff/140001/content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java#newcode244 content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java:244: mRunningOnUiThread = true; On 2017/04/28 22:07:40, aelias wrote: > ...
3 years, 7 months ago (2017-04-28 23:00:47 UTC) #24
aelias_OOO_until_Jul13
On 2017/04/28 at 23:00:47, bhallam wrote: > https://codereview.chromium.org/2500663002/diff/140001/content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java > File content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java (right): > > https://codereview.chromium.org/2500663002/diff/140001/content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java#newcode244 ...
3 years, 7 months ago (2017-04-28 23:08:01 UTC) #25
Changwan Ryu
On 2017/04/28 23:08:01, aelias wrote: > On 2017/04/28 at 23:00:47, bhallam wrote: > > > ...
3 years, 7 months ago (2017-04-28 23:29:47 UTC) #26
bhallam
On 2017/04/28 23:29:47, Changwan Ryu wrote: > On 2017/04/28 23:08:01, aelias wrote: > > On ...
3 years, 7 months ago (2017-05-01 20:02:51 UTC) #27
Changwan Ryu
https://codereview.chromium.org/2500663002/diff/160001/content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java File content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java (right): https://codereview.chromium.org/2500663002/diff/160001/content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java#newcode252 content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java:252: mConnection.getQueueForTest().put(mUnblocker); You need to call in the following order: ...
3 years, 7 months ago (2017-05-01 20:58:49 UTC) #28
bhallam
https://codereview.chromium.org/2500663002/diff/160001/content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java File content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java (right): https://codereview.chromium.org/2500663002/diff/160001/content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java#newcode252 content/public/android/junit/src/org/chromium/content/browser/input/ThreadedInputConnectionTest.java:252: mConnection.getQueueForTest().put(mUnblocker); On 2017/05/01 20:58:49, Changwan Ryu wrote: > You ...
3 years, 7 months ago (2017-05-01 22:54:03 UTC) #29
Changwan Ryu
https://codereview.chromium.org/2500663002/diff/160001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java File content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java (right): https://codereview.chromium.org/2500663002/diff/160001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java#newcode107 content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java:107: mShouldUpdateExtractedText = false; The other two values are being ...
3 years, 7 months ago (2017-05-02 00:58:41 UTC) #30
bhallam
Hi, Can you PTAL at the latest changes to the unit tests? Thanks bhallam
3 years, 7 months ago (2017-05-09 01:25:59 UTC) #31
Changwan Ryu
test looks good, but one more thing to be done. I'll leave the final approval ...
3 years, 7 months ago (2017-05-09 02:52:18 UTC) #32
bhallam
Hi aelias, I have just addressed last the comment by changwan@. Can you PTAL at ...
3 years, 7 months ago (2017-05-09 20:55:57 UTC) #33
aelias_OOO_until_Jul13
https://codereview.chromium.org/2500663002/diff/200001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java File content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java (right): https://codereview.chromium.org/2500663002/diff/200001/content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java#newcode203 content/public/android/java/src/org/chromium/content/browser/input/ThreadedInputConnection.java:203: final ExtractedText extractedText = convertToExtractedText(mCachedTextInputState); This shouldn't be using ...
3 years, 7 months ago (2017-05-09 21:51:06 UTC) #34
bhallam
Hi aelias, I have updated the latest patch-set with the correct/threadsafe copy of TextInputState within ...
3 years, 7 months ago (2017-05-09 23:30:51 UTC) #35
aelias_OOO_until_Jul13
lgtm, thanks!
3 years, 7 months ago (2017-05-10 00:51:04 UTC) #36
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2500663002/220001
3 years, 7 months ago (2017-05-10 05:34:25 UTC) #46
commit-bot: I haz the power
3 years, 7 months ago (2017-05-10 05:42:22 UTC) #49
Message was sent while issue was closed.
Committed patchset #12 (id:220001) as
https://chromium.googlesource.com/chromium/src/+/9b5ebac3230f3c90782296ae9539...

Powered by Google App Engine
This is Rietveld 408576698