aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Fix dicttool build" am: a92d0f9262 am: 438a303732Tadashi G. Takaoka2018-10-311-0/+3
|\ | | | | | | | | | | am: 6aed05232b Change-Id: I558fb5ff22a7428d1d82eac82b4caba469ed48d4
| * Fix dicttool buildTadashi G. Takaoka2018-10-291-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | This CL partially reverts - Id88b02b74bdfe4ca05b08181ceb6b34d5652fc0c - I05c7d8429e8d9a26139456763c77997340fea8c2 And followup (remove shortcut support) - I73b7dc008a5acaf75a31a36a2d332b5afabd82d0 Bug: 28255684 Test: make -j10 dicttool_aosp Change-Id: I2e01ed86b9517a1141aee35ea6d8ef39258981d1
* | Remove unused class PersonalDictionaryLookupYohei Yukawa2018-07-041-651/+0
| | | | | | | | | | | | | | | | | | | | | | | | PersonalDictionaryLookup has never been used. Usually proguard can remove this class but it also makes it difficult to run unit tests. We should just remove this unused class. Bug: 111164993 Test: compile Test: No new test failure Change-Id: I732db94cb3aac4ed9c6b5954679b896334a12a9c
* | Migrated various apps under packages/inputmethods/LatinIME/ to androidxvineel sadineni2018-05-159-12/+12
| | | | | | | | | | | | Bug: 76692459 Test: mmma packages/inputmethods/LatinIME/ Change-Id: Ib76af6f6db1a0dd5cf64a06a4ea56151712e9692
* | Merge java-overridable/ into java/ againYohei Yukawa2018-05-0617-0/+809
|/ | | | | | | | | | | | | | | This CL a logical revert of a previous CL [1], which separated Java files into common ones and overridable ones. Now that that overriding concept is no longer used, there is no need to keep having separate directory structure. [1]: Ic734bd4d20aa050c688a3158b1a382ae0ac18991 fb74ab15c1343084740d65ef8744cad33a678e82 Fix: 79323502 Test: make -j aosp_taimen-userdebug && make -j Test: tapas LatinIME && make -j Change-Id: I2090bc25d18e6d4f24e91c2cbfe832755cbb4e8f
* Introduce a custom intent action to close software keyboardYohei Yukawa2017-09-011-0/+37
| | | | | | | | | | | | | | | | | | | | | 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
* Start full screen mode on first tap when HW keyborad is connected.Keisuke Kuroyanagi2016-03-151-1/+1
| | | | | | | | | | | | | | | | | | | | 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
* Map "sr-Latn" to "sr_ZZ" for internal use.Yohei Yukawa2016-03-041-1/+24
| | | | | | | | | | | 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
* Fix runtime crash on KitKat and prior.Yohei Yukawa2016-02-221-2/+8
| | | | | | | | | | | | | | | | | | 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
* Experimental automatic language switching support.Yohei Yukawa2016-01-222-1/+70
| | | | | | | | | | | 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
* Use "languageTag" in RichInputMethodSubtype.Yohei Yukawa2016-01-211-1/+1
| | | | | | | | | | 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
* Merge remote-tracking branch 'goog/mnc-dr-ryu-dev'David Riley2015-12-212-97/+154
|\
| * Fix AltR+1 -> ESC shortcuts bringing on-screen keyboardDmitry Torokhov2015-11-032-97/+154
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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)
* | Change NavigationBar invisible if the input view is not shown.Seigo Nonaka2015-12-081-0/+13
|/ | | | | | | | | | | | | 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
* Define shortcuts for toggling IME layouts.Dan Zivkovic2015-10-152-54/+111
| | | | | | | | | | | 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)
* Re-activate emoji keyboard shortcut.Dan Zivkovic2015-10-151-4/+0
| | | | | | | Bug 23900149. Change-Id: Iff8a3892bb88f82736e5fa680c38d98cda4d2777 (cherry picked from commit e1641395e30de7b53b06fc5c820ea83bf04b3aad)
* Fix the ellipses image scaling of LatinIMEMohammadinamul Sheik2015-08-121-1/+3
| | | | | | Bug: 23082844 Change-Id: I7baac5e5a0700280906fd0f5f9351fc8dfc4c2b3 (cherry picked from commit 990e9a75b6d88ba234131612f11eac6b69c1cf84)
* Handle Cloud Sync and SpellChecker settings when permission changedMohammadinamul Sheik2015-07-244-18/+92
| | | | | | | | | | | | | | | | | | 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)
* [LatinIME] Support MNC permissions.Mohammadinamul Sheik2015-07-1512-158/+431
| | | | | | | | | | | | | | | | | | | 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
* Remove android.util.Log from FileUtilsJatin Matani2015-07-092-2/+8
| | | | | | | | | | 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
* Bring back shortcuts and add to dictionary UIJatin Matani2015-07-065-61/+396
| | | | | | For JB and lower devices, the UI is surfaced by the IME. Bug: 22200135 Change-Id: Icca08500ee0683e2ceb5357b0bc430cd1712220e
* Load metadata.json from resources on DB reset.Dan Zivkovic2015-06-242-1/+36
| | | | | | | | | | | 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
* Merge "Small optimization to eliminate a >0 check in RichInputConnection." ↵Tom Ouyang2015-06-241-4/+3
|\ | | | | | | into jb-ub-latinimegoogle
| * Small optimization to eliminate a >0 check in RichInputConnection.Tom Ouyang2015-06-241-4/+3
| | | | | | | | Change-Id: Ibdf97726008c1f94c970461196ba445ce328a8cb
* | Extend laggy connection timeout for initial load.Dan Zivkovic2015-06-241-14/+27
|/ | | | | | | | | | 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
* Merge changes Iaed8abfb,I8e55b57c into jb-ub-latinimegoogleDan Zivkovic2015-06-231-3/+4
|\ | | | | | | | | | | * changes: LatinIME portion of StatsUtil change. Do not decorate committed spans.
| * Do not decorate committed spans.Dan Zivkovic2015-06-231-3/+4
| | | | | | | | | | | | | | | | | | 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
* | Merge "Workaround for preserving responsiveness on a slow InputConnection." ↵Tom Ouyang2015-06-232-10/+67
|\ \ | |/ |/| | | into jb-ub-latinimegoogle
| * Workaround for preserving responsiveness on a slow InputConnection.Tom Ouyang2015-06-232-10/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Do not force downloads on package replace.Dan Zivkovic2015-06-231-1/+2
| | | | | | | | | | | | | | | | | | 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
* | Fix the previous downloads logic to not missing any downloads.Mohammadinamul Sheik2015-06-221-7/+5
|/ | | | | Bug: 21797386 Change-Id: Ic09698b28e31b4f16831898d7cb08853f4e5df4a
* Detection and logging of slow input connections.Dan Zivkovic2015-06-221-7/+57
| | | | | | | | | Also adds a hook to log using StatsUtils. Proto change is coming in a separate CL. Bug 22010482. Change-Id: I08065fc7a5cd116e50ff84cb14bbbc44c4f14bc7
* Clear/remove all the scheduled downloads in Download ManagerMohammadinamul Sheik2015-06-221-0/+35
| | | | | Bug: 21797386 Change-Id: I60f50a2fe890af46f5e847c34df2edf719d40ac4
* Cleanup before fixing getTextAfterCursor().Dan Zivkovic2015-06-192-27/+22
| | | | | | | | | | | 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
* Revert "Remove "Personal dictionary" link from settings."Dan Zivkovic2015-06-162-0/+42
| | | | | | | | This reverts commit 76de0a8f528830d7f6c85f45f63cac0f5aa8517c. Bug 21881199. Change-Id: I53f42a1e8f25d214de97264f4d25813bc637cafa
* Remove dogfood history reset.Dan Zivkovic2015-05-211-33/+0
| | | | Change-Id: I1d7ebe5962fc3176c376e1ce34c7ac98cdf41373
* Fix on-commit bug in AOSP keyboard.Dan Zivkovic2015-05-191-6/+23
| | | | | | Bug 21272977. Change-Id: Id561040c29a7f2576cd9ef0514c31751a4360ef8
* clean up debug tags.Mohammadinamul Sheik2015-05-121-1/+0
| | | | Change-Id: I2ca37bd691abcc036ead8071045d37d72b2d088d
* Set syncAutomatically for sync usersJatin Matani2015-05-071-0/+15
| | | | | | | | Note: this doesn't mean that sync would happen. It only unblocks users who are already opted into cloud sync Change-Id: I91836efadac89d0429d7f2e9c9190a873a638743
* Look up thresholds during decoder reset.Dan Zivkovic2015-05-043-3/+3
| | | | | | Bug 20701628. Change-Id: I4de89587776a0859aeda5d2ed76ab1eb4f918458
* Merge "Make the DictionaryService stage the downloaded files"Mohammadinamul Sheik2015-05-043-52/+96
|\
| * Make the DictionaryService stage the downloaded filesMohammadinamul Sheik2015-05-043-52/+96
| | | | | | | | | | Bug: 20641948 Change-Id: I6639c995b12c033bc30241cd219201dd483ee516
* | Delete history on upgrade in LatinIME.Dan Zivkovic2015-05-013-7/+40
| | | | | | | | | | | | Bug 20733902. Change-Id: Ibe27e6cafe4db87ba62d7df708229e0d8564ffa8
* | Do not learn from cursor corrections when autocorrection is disabled.Tom Ouyang2015-04-301-3/+2
|/ | | | | Bug: 20681528 Change-Id: I80e7095b70a151f3ccc36856d7e0837613a35972
* Spelling cannot cache words across invocations.Dan Zivkovic2015-04-294-25/+63
| | | | | | | | | | | 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
* Restore preference change update to show app icon setting.Chieu Nguyen2015-04-272-1/+4
| | | | | Bug: 20544640 Change-Id: I6e2a26a8a5e43360dfefcc85bb46eae28f5e3867
* Specify fileName argument as Nullable.Dan Zivkovic2015-04-231-1/+1
| | | | | | Bug 20526371. Change-Id: If53a81f925fbb1b29ad945ba0ec2192d92ae1eff
* Restore switch for showing app icon.Chieu Nguyen2015-04-223-3/+25
| | | | | Bug: 20307420 Change-Id: I95969de40936d2ea992669324d0c4df7e8de2bd9
* Always specify non-null Locale object to SuggestionSpanYohei Yukaw2015-04-201-2/+16
| | | | | | | | | | | | | | | | | 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
* Merge "Fix bug in regular expression stripping quotes."Martin Paraskevov2015-04-211-1/+1
|\