aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin (follow)
Commit message (Expand)AuthorAgeFilesLines
* Introduce a custom intent action to close software keyboard•••This CL introduces a custom intent action for apps to ask AOSP Keyboard to close its software keyboard with guarding it with a signature-protected permission. Any app that is signed with the same signature as AOSP Keyboard can have the following line in AndroidManifest.xml <uses-permission android:name="com.android.inputmethod.latin.HIDE_SOFT_INPUT"/> to request AOSP Keyboard to close its software keyboard as follows. sendBroadcast(new Intent("com.android.inputmethod.latin.HIDE_SOFT_INPUT") .setPackage("com.android.inputmethod.latin")); Test: Manually verified with a test app. Fixes: 65270710 Change-Id: I4fd2e3a7336ec66c70582a2f274a200cbf035a7f Yohei Yukawa2017-09-011-0/+37
* Start full screen mode on first tap when HW keyborad is connected.•••LatinIME checks hardware keyboard presence and software keyboard visibility to decide whether to start full screen mode. This doesn't work well with the recent update on "Show input method" (Bug: 22517687, Id4d332e3909590c68345e). On the first tap, software keyboard is not shown and hardware keyboard is connected; so full screen mode is not started. However, onEvaluateInputViewShown may return true ant software keyboard may be brought up. In this care, on the second tap, software keyboard is visible so full screen mode will be started regardless of hardware keyboard presence. This CL checks onEvaluateInputViewShown to decide whether to start full screen mode. Bug: 27234709 Change-Id: I587262cc36e5fccc59620b4bd2d2c3c05c72232f Keisuke Kuroyanagi2016-03-151-1/+1
* Map "sr-Latn" to "sr_ZZ" for internal use.•••We want to expose Serbian (Latin) layout as "sr-Latn" to the system, while our internal logic may not be ready to deal with "sr-Latn" yet. As a temporary workaround, we remap "sr-Latn" into "sr_ZZ" for our internal use. Bug: 27348943 Change-Id: I93ff0c75b3687bb1b913f451b9eb5f2820beefbc Yohei Yukawa2016-03-041-1/+24
* Fix runtime crash on KitKat and prior.•••This is a follow up CL to the previous CL [1], in which we started calling Window#setNavigationBarColor(int) when the window visibility is changed. One thing we missed is that calling Window#setNavigationBarColor(int) on KitKant or prior devices would result in a runtime crash. Hence with this CL we do not call that method unless the OS version is N or leter, because specifying Color.TRANSPARENT would make sense on N+ devices. [1]: I14d9490e00caa852035a05830e76114cbe6af8f2 6c04339c5aadb5118b0e0a8178b3d569956bbad7 Bug: 22564251 Bug: 27302540 Change-Id: Ib7299dd8c3dad4271f8fac453e690c83bda4a954 Yohei Yukawa2016-02-221-2/+8
* Experimental automatic language switching support.•••With this CL, LatinIME switches the current subtype from its enabled subtypes based on the first locale in EditorInfo#hintLocales. This functionality is still experimental, and will be triggered only when EditorInfo#hintLocales is specified by the application. Bug: 22859862 Change-Id: Ibd0559b370d8aa0d50d1bada8ecfdac0ed8db898 Yohei Yukawa2016-01-222-1/+70
* Use "languageTag" in RichInputMethodSubtype.•••With this CL, RichInputMethodSubtype#getLocale() starts returning a Locale object that is initialized with "languageTag" when it is specified. No behavior change is intended when "languageTag" attribute is not available or specified. Bug: 22858221 Change-Id: I23f2e479b8e284ce589c6950b071ba84c5dd8ce1 Yohei Yukawa2016-01-211-1/+1
* Merge remote-tracking branch 'goog/mnc-dr-ryu-dev'David Riley2015-12-212-97/+154
|\
| * Fix AltR+1 -> ESC shortcuts bringing on-screen keyboard•••Change the way we decide whether we want to show on-screen keyboard by not only paying attention to modifiers, but also keeping track whether the key sequence started in the right state. We are still misfiring if user presses a non-modifier key and then our modifier hot-key, but such sequence is unlikely. Given the fact that we do not want to store too much state I believe this deficiency is acceptable. Bug: 25087681 Bug: 24142161 Change-Id: I1a6b5e8e903c27a87134a6c9a7cd474a0607d5c8 (cherry picked from commit 7c513455918a52bd28c1c8181cb2880db0973b4b) Dmitry Torokhov2015-11-032-97/+154
* | Change NavigationBar invisible if the input view is not shown.•••The opaque navigation bar guard view does not make much sense when the IME does not show software keyboard at all. LatinIME does not show any UI when the hardware keyboard is connected. With Iea77915ecc55eedaf19899e72c44f704ba9d852c, input method can change the navigation bar visibility. This CL changes navigation bar invisible when the hardware keyboard is connected. Bug:22564251 Change-Id: I14d9490e00caa852035a05830e76114cbe6af8f2 Seigo Nonaka2015-12-081-0/+13
|/
* Define shortcuts for toggling IME layouts.•••Out of the box, we want Alt-Left to toggle Emojis, while Alt-Right toggles the shifted symbols layout. Bug: 23954008 Bug: 24369173 Change-Id: I93dd66fb469e5d0a831359ff3a786fe68e1d73ea (cherry picked from commit 411841b374aa04e333ea5a438dfd539f49ec589a) Dan Zivkovic2015-10-152-54/+111
* Re-activate emoji keyboard shortcut.•••Bug 23900149. Change-Id: Iff8a3892bb88f82736e5fa680c38d98cda4d2777 (cherry picked from commit e1641395e30de7b53b06fc5c820ea83bf04b3aad) Dan Zivkovic2015-10-151-4/+0
* Fix the ellipses image scaling of LatinIME•••Bug: 23082844 Change-Id: I7baac5e5a0700280906fd0f5f9351fc8dfc4c2b3 (cherry picked from commit 990e9a75b6d88ba234131612f11eac6b69c1cf84) Mohammadinamul Sheik2015-08-121-1/+3
* Handle Cloud Sync and SpellChecker settings when permission changed•••This build has been compiled against API 23 This build is approved to go out with the M OTA, but may NOT be released to the public until the Play Store has enabled API level 23 apps Version: 4.1.2300x.build_id 1. Disable the settings. 2. Disable the feature. 3. Force reload the facilitator. Bug: 22564048 Change-Id: Ic09742786c3e4efc034bceee836ae6a1e07307a1 (cherry picked from commit 031d04192080f0368f21c3371d1ec6af87375357) Mohammadinamul Sheik2015-07-244-18/+92
* [LatinIME] Support MNC permissions.•••This build has been compiled against API 23 This build is approved to go out with the M OTA, but may NOT be released to the public until the Play Store has enabled API level 23 apps Version: 4.1.2300x.build_id 1. Replaces the personalization is on information with the suggest contacts. 2. Enables "Use Contacts" only if the app has permission to read contacts. 3. Disables the contacts dictionary in the Facilitator. 4. Do not register/read the contacts in the contact observer. Bug: 22236416 Change-Id: I9674e13d0d0f4a2014c5024fde0178de684c07e7 Mohammadinamul Sheik2015-07-1512-158/+431
* Remove android.util.Log from FileUtils•••FileUtils is being used for other non android projects and hence breaks when built. Instead use the log statements at caller to record Log.e messages. Hence there is no side effect here. Bug:22042371 Change-Id: Ieb100006ff38e013bc30542637465f58bfc0f2f2 Jatin Matani2015-07-092-2/+8
* Bring back shortcuts and add to dictionary UI•••For JB and lower devices, the UI is surfaced by the IME. Bug: 22200135 Change-Id: Icca08500ee0683e2ceb5357b0bc430cd1712220e Jatin Matani2015-07-065-61/+396
* Load metadata.json from resources on DB reset.•••This will ensure that a new (or upgraded) keyboard instance will know which dictionaries are available for download so it requests missing dictionaries. In addition, we increment the database version number to ensure upgrades of existing Fava instances start with a clean slate. Bug 22069694. Change-Id: Id71310412682543a3931f9c5c03cb0369fa7b9ac Dan Zivkovic2015-06-242-1/+36
* Merge "Small optimization to eliminate a >0 check in RichInputConnection." in...Tom Ouyang2015-06-241-4/+3
|\
| * Small optimization to eliminate a >0 check in RichInputConnection.•••Change-Id: Ibdf97726008c1f94c970461196ba445ce328a8cb Tom Ouyang2015-06-241-4/+3
* | Extend laggy connection timeout for initial load.•••The initial reloadTextCache() operation needs to read 1k characters, and it could be slow on low-end devices. Also, the initial load is not blocking key strokes, so it can take a little longer. Bug 22062102. Change-Id: I134424e8910c0d6131c311a862bdc87eccd3af44 Dan Zivkovic2015-06-241-14/+27
|/
* Merge changes Iaed8abfb,I8e55b57c into jb-ub-latinimegoogle•••* changes: LatinIME portion of StatsUtil change. Do not decorate committed spans. Dan Zivkovic2015-06-231-3/+4
|\
| * Do not decorate committed spans.•••Users rarely tap on committed words, and the cost of sending the spans back through the input connection, back and forth to the target app, is too high. Bug 21926256. Change-Id: I8e55b57ce2148ed313dc927425b6d9c958634958 Dan Zivkovic2015-06-231-3/+4
* | Merge "Workaround for preserving responsiveness on a slow InputConnection." i...Tom Ouyang2015-06-232-10/+67
|\ \ | |/ |/|
| * Workaround for preserving responsiveness on a slow InputConnection.•••1. Add mechanism to detect a slow or non-resonsive InputConnection (IC) 2. When IC slowness is detected, skip certain IC calls that are known to be expensive (e.g., getTextAfterCursor). 3. Similarly, disables learning / unlearning on a slow IC. 4. IC slowness flag is reset when starting input on a new TextView or when a fixed amount of time has passed. Note: These are mostly temporary workarounds. The permanent solution is to refactor RichInputConnection so that it is less sensitive to IC slowness in general. Bug: 21926256 Change-Id: I383fab0516d3f3a8e0f71e5d760a8336a7730f7c Tom Ouyang2015-06-232-10/+67
* | Do not force downloads on package replace.•••This is causing issues we can't deal with in a safe and timely manner. Furthermore, users who need downloaded dictionaries already have them by now. Bug 21797386. Change-Id: I97e5fd84edcf2b16f04db57b7ae4a13fa9ce993f Dan Zivkovic2015-06-231-1/+2
* | Fix the previous downloads logic to not missing any downloads.•••Bug: 21797386 Change-Id: Ic09698b28e31b4f16831898d7cb08853f4e5df4a Mohammadinamul Sheik2015-06-221-7/+5
|/
* Detection and logging of slow input connections.•••Also adds a hook to log using StatsUtils. Proto change is coming in a separate CL. Bug 22010482. Change-Id: I08065fc7a5cd116e50ff84cb14bbbc44c4f14bc7 Dan Zivkovic2015-06-221-7/+57
* Clear/remove all the scheduled downloads in Download Manager•••Bug: 21797386 Change-Id: I60f50a2fe890af46f5e847c34df2edf719d40ac4 Mohammadinamul Sheik2015-06-221-0/+35
* Cleanup before fixing getTextAfterCursor().•••We never delete text after the cursor, so constrain the API accordingly. Define the number of characters to read before and after. Set them to reasonable values. The next CL will start caching text after the cursor. Bug 21926256. Change-Id: Idd58daf68614de4a69344aa3c8a4323720c5d3a0 Dan Zivkovic2015-06-192-27/+22
* Revert "Remove "Personal dictionary" link from settings."•••This reverts commit 76de0a8f528830d7f6c85f45f63cac0f5aa8517c. Bug 21881199. Change-Id: I53f42a1e8f25d214de97264f4d25813bc637cafa Dan Zivkovic2015-06-162-0/+42
* Remove dogfood history reset.•••Change-Id: I1d7ebe5962fc3176c376e1ce34c7ac98cdf41373 Dan Zivkovic2015-05-211-33/+0
* Fix on-commit bug in AOSP keyboard.•••Bug 21272977. Change-Id: Id561040c29a7f2576cd9ef0514c31751a4360ef8 Dan Zivkovic2015-05-191-6/+23
* clean up debug tags.•••Change-Id: I2ca37bd691abcc036ead8071045d37d72b2d088d Mohammadinamul Sheik2015-05-121-1/+0
* Set syncAutomatically for sync users•••Note: this doesn't mean that sync would happen. It only unblocks users who are already opted into cloud sync Change-Id: I91836efadac89d0429d7f2e9c9190a873a638743 Jatin Matani2015-05-071-0/+15
* Look up thresholds during decoder reset.•••Bug 20701628. Change-Id: I4de89587776a0859aeda5d2ed76ab1eb4f918458 Dan Zivkovic2015-05-043-3/+3
* Merge "Make the DictionaryService stage the downloaded files"Mohammadinamul Sheik2015-05-043-52/+96
|\
| * Make the DictionaryService stage the downloaded files•••Bug: 20641948 Change-Id: I6639c995b12c033bc30241cd219201dd483ee516 Mohammadinamul Sheik2015-05-043-52/+96
* | Delete history on upgrade in LatinIME.•••Bug 20733902. Change-Id: Ibe27e6cafe4db87ba62d7df708229e0d8564ffa8 Dan Zivkovic2015-05-013-7/+40
* | Do not learn from cursor corrections when autocorrection is disabled.•••Bug: 20681528 Change-Id: I80e7095b70a151f3ccc36856d7e0837613a35972 Tom Ouyang2015-04-301-3/+2
|/
* Spelling cannot cache words across invocations.•••We want to let the facilitator decide if a word is valid or invalid, and cache the answer in the facilitator's cache. The spell checker session doesn't need its own word cache, except as a crutch to communicate suggestions to the code that populates the suggestion drop-down. We leave that in place. Bug 20018546. Change-Id: I3c3c53e0c1d709fa2f64a2952a232acd7380b57a Dan Zivkovic2015-04-294-25/+63
* Restore preference change update to show app icon setting.•••Bug: 20544640 Change-Id: I6e2a26a8a5e43360dfefcc85bb46eae28f5e3867 Chieu Nguyen2015-04-272-1/+4
* Specify fileName argument as Nullable.•••Bug 20526371. Change-Id: If53a81f925fbb1b29ad945ba0ec2192d92ae1eff Dan Zivkovic2015-04-231-1/+1
* Restore switch for showing app icon.•••Bug: 20307420 Change-Id: I95969de40936d2ea992669324d0c4df7e8de2bd9 Chieu Nguyen2015-04-223-3/+25
* Always specify non-null Locale object to SuggestionSpan•••Confusingly, specifying a null Locale object to the constructor of SuggestionSpan does not necessarily mean that SuggestionSpan#getLocale() returns null. The constructor in question also receives Context object, and Context's locale can be used as a fallback locale to initialize locale of SuggestionSpan. With this CL, LatinIME always specify non-null Locale object when instantiating SuggestionSpan object. It basically corresponds to the active main dictionary, but can be Locale#ROOT when one locale is not determined for some reasons. BUG: 20435013 Change-Id: I2c152466410327300e7dba4d7ed9a22f57c17c4f Yohei Yukaw2015-04-201-2/+16
* Merge "Fix bug in regular expression stripping quotes."Martin Paraskevov2015-04-211-1/+1
|\
| * Fix bug in regular expression stripping quotes.•••Change-Id: Iaf84a9a1f00b31daf7225991c4cfc5f17b578028 Martin Paraskevov2015-04-201-1/+1
* | Merge "Add affinity model for contact names."Tom Ouyang2015-04-173-11/+102
|\ \ | |/ |/|
| * Add affinity model for contact names.•••This allows us to: 1. Rank contacts and only add the top N names to the keyboard LM. 2. Avoid adding duplicate names. Note: The affinity calcualuation is limited by the fact that some apps currently do not update the TIMES_CONTACTED counter. To better handle this case, the new measure also takes into account whether or not a name is in the visible contacts group. Bug: 20053274 Change-Id: I2741cb8958667d4a294aba8c437a45cec4b42dc7 Tom Ouyang2015-04-163-11/+102
* | Merge "Strip quotes from begining/end of a word before checking its validity."Martin Paraskevov2015-04-161-8/+13
|\ \
| * | Strip quotes from begining/end of a word before checking its validity.•••Bug: 20142633 Change-Id: Ia0f3661ac3028473c00f83df72dcb9e1fd134247 Martin Paraskevov2015-04-151-8/+13
| |/