Commit graph

1582 commits

Author SHA1 Message Date
Jean Chalard
e110018e2a [IL114] Move a method to InputLogic
Bug: 8636060
Change-Id: I0d8f93985ddc6e93ce9af0d92a8056620351a498
2014-03-04 14:46:04 +09:00
Jean Chalard
5d8f6660bf [IL113] More cleanup
We should not test punctuation with this equality test any more.
Also, whether the suggestion strip is displayed or not, or whether
the hint is displayed or not, has nothing to do with this method
and should be handled elsewhere rather than here -- and as a
matter of fact, it is, which makes this useless.

Bug: 8636060
Change-Id: I6a54ee87e4e9f81bc33158acf4a264c3abd5829d
2014-03-04 14:46:04 +09:00
Jean Chalard
145e8568f4 [IL112] Cleanup
Bug: 8636060
Change-Id: Ic7c2dec2521613d52707457463691bec383177ff
2014-03-04 14:32:02 +09:00
Jean Chalard
32c6d4caea [IL111] Remove a member.
...and improve encapsulation and readability.

Bug: 8636060
Change-Id: I36407630b307df0721ea7fdb7e7a22cdf2b018b3
2014-03-04 14:31:47 +09:00
Keisuke Kuroyanagi
e76c273502 Merge changes I20ce61c4,I2edab4e3
* changes:
  Remove "Use only personalization dictionary".
  Remove redundant creation of dictionary facilitator.
2014-03-03 04:00:24 +00:00
Ken Wakasa
98534dc065 Add missing null checks for getOwnerInstance()
It may just return null.

Change-Id: I778fb48262ef8af28a4af50b70bb94ace75a488c
2014-02-28 16:13:51 +09:00
Keisuke Kuroyanagi
e9926b0d11 Remove redundant creation of dictionary facilitator.
Change-Id: I2edab4e3ba4ea0b9b13f9bb224aac86cac9b9f31
2014-02-27 22:31:57 +09:00
Jean Chalard
bd1caac16a [IL110] Remove an unused interface function
...and make a method private.

Bug: 8636060
Change-Id: If16f7e8ef3779f77a9db23fb7c54e7c23b043b86
2014-02-26 17:46:20 +09:00
Jean Chalard
23e22613d7 Remove useless args and processing.
Bug: 13062385
Change-Id: I426545d1fe8fd76bcf4d1dce19e6b571a55c79ae
2014-02-26 11:40:43 +09:00
Jean Chalard
296adf5710 Merge "Change a heuristic and add a log." 2014-02-21 11:58:16 +00:00
Tadashi G. Takaoka
d73044a249 Add ImportantNoticeDialog
Change-Id: Icaeb7dddd16362cd4a6384d295f89c7fbabc8b35
2014-02-21 16:36:15 +09:00
Tadashi G. Takaoka
fe39d576dc Support versioned important notice
This change must be checked in together with If38a754d00.

Bug: 10587358
Change-Id: I91580f9468bc5ee7ed1694d7852a60dc6793dac0
2014-02-21 09:54:08 +09:00
Jean Chalard
3b4c1d3056 Change a heuristic and add a log.
The heuristic in RichInputConnection makes little sense
when textLength > mExpectedSelStart but we have
more than 1024 characters of text. If there are that many,
it's about 100% sure that 1024 is not the correct cursor
position. With no good guess, we'll just continue trusting
the app, even though we know it's lying : at least it will
make the problem visible to the app author.

Also, there have been a lot of confusion about initialSelStart
and initialSelEnd. The keyboard should log them so that
it helps us and editor authors debug more easily these
common problems.

Issue #65170 in AOSP and
Bug: 12772035
Change-Id: I6665a16c9f2832d33ee323f033bb38bcc092a3b4
2014-02-20 23:49:20 +09:00
Jean Chalard
a118d19f6c Merge "Don't distrust the cursor pos so much as to bug on IPC delay" 2014-02-20 14:22:48 +00:00
Jean Chalard
3c84eb8822 Don't distrust the cursor pos so much as to bug on IPC delay
When the cursor is moved by the user, the RichInputConnection
is told about it. However, to work around a framework bug, it
also looks at how many characters are in the buffer before the
cursor, and if that's more than the value it's been passed, it
deduces that's a framework bug and there are at least as many
characters as seen before the cursor, so it puts the expected
cursor position there.

When you move the cursor, TextView calls onUpdateSelection,
and when you move it fast, you'll get rapid-fire calls to
onUpdateSelection. This is fine, the RIC is equipped to
deal with that.

However, these calls take some time to make it to the IME. In
this instance, when the first call gets through and the IME
calls TextView (synchronously) for text before the cursor, the
cursor has already moved in the app, and TextView returns more
characters than the cursor position was declared to be in this
instance, so the RIC sets that as the expected cursor position.
Sure enough, a split second later, the second call to
onUpdateSelection arrives, with the new cursor position set
where the RIC had found it too early. The RIC takes that as an
"expected" cursor move, and the input does not get reset.

Luckily, we have a way out. As far as we know, the framework bug
only manifests itself upon rotation, which means we should only
have to adjust for it in onStartInputView. Doing it in
onUpdateSelection is too zealous (and probably too distrustful of
the app to send the correct cursor positions).

So we should just take care of the rotation case (by calling
tryFixLyingCursorPosition in onStartInputView) and remove the
compensating code in resetCachesUponCursorMoves.

Bug: 12982502
Change-Id: Ic3c1408a1ec45deaea63b01d98376a79ae567d77
2014-02-20 23:13:14 +09:00
Keisuke Kuroyanagi
d36328cecf Add test only methods to test personalized dicts.
Bug: 11122480
Change-Id: I79a4a73ff09a2d34d4ca094d705e901fb4bc855c
2014-02-20 22:20:43 +09:00
Keisuke Kuroyanagi
a514ea7e1b Merge "Check all enabled IME's subtypes to enable personalization." 2014-02-20 09:33:21 +00:00
Tadashi G. Takaoka
1672ccbbb6 Change important notice version preference file
This CL also reset the notice version to 1.
This CL must be checked in together with Iea8d9ff038.

Change-Id: I838f7b5b295388d64d6aba90f50b06654eba16e5
2014-02-20 16:50:34 +09:00
Keisuke Kuroyanagi
6b23749dec Check all enabled IME's subtypes to enable personalization.
Bug: 13067743

Change-Id: I6fc68b5151430a5ab51777f4c381e20f5a657924
2014-02-20 15:05:37 +09:00
Keisuke Kuroyanagi
34fb962513 Call PersonalizationDictionarySessionRegistrar.init().
Wrongly removed in I1f50cb137b6054dc9.

Bug: 13067743
Change-Id: I27cd221cb7f6e403c3fc128d65d14dbf628b6f55
2014-02-19 23:27:14 +09:00
Keisuke Kuroyanagi
d102eb80da Remove personalization dicts for multilingual users.
Bug: 13067743
Change-Id: I1f50cb137b6054dc9442237586b70fc0aa2bf427
2014-02-19 21:00:27 +09:00
Tadashi G. Takaoka
920c40fe45 Use AlertDialog.setOnDismissListener
AlertDialog.Builder.setOnDismissListener is supported from API 17.

Bug: 10587358
Change-Id: Ie8ce8e283b803f7f6bb58ced446e676339f980eb
2014-02-19 19:05:06 +09:00
Tadashi G. Takaoka
ed616083dd Merge "Turn personalization on when important notice dialog is displayed" 2014-02-19 09:46:15 +00:00
Tadashi G. Takaoka
6abc852255 Turn personalization on when important notice dialog is displayed
This change must be checked in together with Ifde70b1d3b.

Bug: 10587358
Change-Id: I9dc48f9d521e0e6f6269e4f184389ba805f3053f
2014-02-19 18:36:32 +09:00
Keisuke Kuroyanagi
e49e007bb2 Fix: Use old suggest after reloading.
Change-Id: Icb2821f61c4203254b7d573cad5ce71fbf0ed841
2014-02-19 12:34:09 +09:00
Jean Chalard
783dabb812 Merge "Cleanup." 2014-02-18 09:54:33 +00:00
Jean Chalard
63be066544 Cleanup.
Less code, less chance of stuff escaping, and a bit of a clarification.
Yay.

Change-Id: I3193fd8ad7ac28195260cbc231c4e498a63a460c
2014-02-18 17:07:46 +09:00
Ken Wakasa
12ff7da19d Some cosmetic fixes in LatinIME.java
Change-Id: Ia2d04ab992f5a0cc736150b2691b2f8ae8f0955d
2014-02-18 14:56:50 +09:00
Ken Wakasa
2312c1954f Cosmetic fixes
Change-Id: I6c755565ba7689357d02d26cc0e92a93031953e8
2014-02-18 12:17:24 +09:00
Tadashi G. Takaoka
affdd36423 Set neutral suggestions should be called after load settings
Bug: 13058751
Change-Id: Iba49e86b90d595473d91753827d499e551dad45c
2014-02-18 11:04:00 +09:00
Tadashi G. Takaoka
f0f4e9fc16 Update important notice version even when user select Settings
Bug: 13060852
Change-Id: I463fdf3d51cacf99693fcde2998ea751046d1cc5
2014-02-18 00:14:30 +09:00
Tadashi G. Takaoka
4c628b9d5b Merge "Don't show important notice on password field" 2014-02-17 08:04:11 +00:00
Tadashi G. Takaoka
ce78a2d8ab Don't show important notice on password field
Bug: 10587358
Change-Id: Ieff7960e5e2b8609fddeb173af578a5d9b2c4d98
2014-02-17 15:38:43 +09:00
Tadashi G. Takaoka
28c02b400f Add go to "Settings" button to important notice dialog
This CL also
- removes icons on important notice title.
- changes the "Personalized suggestions" summary text.

This change must be checked in together with Id115d89ba9.

Bug: 10587358
Change-Id: I52ff26fa8ae12445e9014ba08253f69e1be609f4
2014-02-17 14:57:04 +09:00
Tadashi G. Takaoka
a273319c59 Add PunctuationSuggestions class
This change must be checked in together with I366c477516.

Bug: 12640318
Change-Id: I8d3864b9d9649c9e3306e82b01a6327b11281b1f
2014-02-14 14:13:39 +09:00
Jean Chalard
4197c6f3ab Merge "Show the suggestion strip for the important notice" 2014-02-14 04:07:46 +00:00
Jean Chalard
367a35d377 Dump settings.
Bug: 10315296
Change-Id: Ieb020a23886514b3ba97611d8a6001f32b322f63
2014-02-12 22:53:15 +09:00
Jean Chalard
8adedbf47c Show the suggestion strip for the important notice
Bug: 10587358
Change-Id: Ia060a9ca9dfc2e7fe0750536a9fea3b9cc5900c4
2014-02-12 17:30:04 +09:00
Tadashi G. Takaoka
7ffac033ac Make importance notice dialog cancel able
Bug: 10587358
Change-Id: I7415a6f33e6b5542718164fea1555095d23233e5
2014-02-12 11:59:43 +09:00
Tadashi G. Takaoka
8dda9e480b Show important notice strip
Bug: 10587358
Change-Id: I1af3faa59afb2fc4cb90176acff1c2b0b1ba369c
2014-02-10 21:15:35 +09:00
Jean Chalard
a9e1930a6a Merge "Conditionally store the raw suggestions." 2014-02-06 07:31:22 +00:00
Jean Chalard
a49f61f8a7 Conditionally store the raw suggestions.
Bug: 12913520
Change-Id: Ie15f97d90c142c51089280252b35b5ad1d226e19
2014-02-06 16:14:41 +09:00
Keisuke Kuroyanagi
f2d15d6956 Unregister DictionaryDumpBroadcastReceiver in onDestroy().
Change-Id: I83a05a8369c2fe2fa7522f18eb00983a0b10dc19
2014-02-06 15:37:41 +09:00
Jean Chalard
2bb1c6add9 [IL109] Move more code to InputLogic
Bug: 8636060
Change-Id: Ib12eacc836e8d39c4165c97a2a287f32f6bf5405
2014-02-05 14:49:59 +09:00
Jean Chalard
2c01dd00f2 [IL108] Remove some uses of LatinIME in input logic.
Access the suggestion strip through the interface instead.

Bug: 8636060
Change-Id: Ia8bd705c230f943e309d677ef683b1a2cbe68036
2014-02-05 14:49:59 +09:00
Jean Chalard
ade1aa55b6 [IL107] Add an interface to access the suggestion view.
Bug: 8636060
Change-Id: I603af6bcdaa31f64aaaf916784720a133388c737
2014-02-05 14:49:57 +09:00
Keisuke Kuroyanagi
36c7a62dff Add dictionary dump buttons in debug settings.
Bug: 11736680
Bug: 12810574
Change-Id: I1f797b5ac6acf94b40d9698d4535e8f5da2bfb17
2014-02-04 21:29:09 +09:00
Tadashi G. Takaoka
b06e455797 Clear important notice strip
Bug: 10587358
Change-Id: Ic90e5825200a1d424aac4ba263b252187a203241
2014-02-03 18:28:21 +09:00
Tadashi G. Takaoka
a2d83dfdc7 Merge "Show important notice dialog" 2014-02-03 08:04:03 +00:00
Tadashi G. Takaoka
342e81e7a6 Show important notice dialog
Bug: 10587358
Change-Id: I3b4282a1bb183aa901110a4a2fc1b6ed72818aae
2014-02-03 16:21:53 +09:00