Commit graph

1447 commits

Author SHA1 Message Date
Darcy Wong
8a83334e64 fix(android): Remove KeyboardPickerActivity.getKeyboardIndex() 2020-05-19 14:37:51 +07:00
Darcy Wong
2941378ab4 chore(android): Add comments about keyboard index 2020-05-19 14:06:35 +07:00
Darcy Wong
aa2ad0c73a chore(android): Cleanup comment 2020-05-18 12:53:26 +07:00
Darcy Wong
d8c1f1f1c8 chore(android): Remove comment per review 2020-05-18 11:40:55 +07:00
Darcy Wong
e118721ba0 fix(android): Replace containsKeyboard
Per review comment, replace `KeyboardPickerActivity.containsKeyboard()` with `KeyboardController.keyboardExists()`
2020-05-18 11:11:15 +07:00
Darcy Wong
f504bf302c fix(android): start to address review comments 2020-05-18 10:45:12 +07:00
Darcy Wong
652136829d modify(android): Change assumptions on default keyboard
To support FV app, allow KeyboardController to remove any index.
KeyboardController also no longer initializes with a default of sil_euro_latin.
2020-05-08 21:56:19 +07:00
Darcy Wong
f097f24295 fix(android): Handle other keyboard apps that have different default 2020-05-08 17:34:39 +07:00
Darcy Wong
251dff3bba modify(android): Refactor KeyboardPickerActivity 2020-05-08 16:34:06 +07:00
Darcy Wong
b65c1d76eb chore(android): Add logging for review comments 2020-05-08 15:03:50 +07:00
Darcy Wong
4c913cf730 feat(android): Migrate installed keyboards list to keyboards_list.json 2020-05-06 13:43:12 +07:00
Darcy Wong
a1fa02dbb1 chore(android): Remove unused constructor 2020-05-06 12:01:55 +07:00
Darcy Wong
9bbdd3409e fix(android): Additional cleanup 2020-05-06 11:01:08 +07:00
Darcy Wong
f5d9418f35 fix(android): Refactor constructors per review comments 2020-05-06 09:35:40 +07:00
Darcy Wong
26a7b07e54 modify(android): Add methods to go between LanguageResource and JSON 2020-05-05 11:22:43 +07:00
Darcy Wong
ebfde0f70c
Merge pull request #3051 from keymanapp/fix/android/remove-more-custom
Fix/android/remove more custom
2020-05-01 15:17:14 +07:00
Darcy Wong
4e5eca40d4 chore(android): Update deprecated markings 2020-05-01 14:52:42 +07:00
Darcy Wong
0cf21f6879 fix(android): Mark intend to deprecate
Revert API constants in KMManager and mark them as intended to deprecate in Keyman 15.0
2020-05-01 14:38:18 +07:00
Darcy Wong
cd512d9c2b fix(android): Fix FileUtilsTest to be cross-platform
Fixes #3502 by using `File.separator` in the test
2020-05-01 12:12:08 +07:00
Darcy Wong
9caa6a89d5 fix(android): Remove more unused custom keyboard fields 2020-04-30 22:07:52 +07:00
Darcy Wong
9a70f27416 fix(android): Remove more "custom keyboard" handling 2020-04-30 15:19:26 +07:00
Marc Durdin
214bd4652e chore(windows): Merge branch 'master' into fix/windows/sentry-cleanup 2020-04-30 05:04:13 +10:00
Darcy Wong
490a82eaf2 modify(android): Start refactoring LanguageResource 2020-04-28 17:17:41 +07:00
Marc Durdin
b12baab1c5 fix(android): link VERSION_ENVIRONMENT 2020-04-28 15:56:56 +10:00
Darcy Wong
833ad564e3 modify(android): Deprecate some LanguageResource calls
Per review comments
* Deprecate getPackage() for getPackageID()
* Deprecate getLanguage() for getLanguageID()
2020-04-27 12:03:01 +07:00
Darcy Wong
fb2402d1c1 modify(android): Pass Keyboard to KeyboardInfoActivity 2020-04-23 16:31:24 +07:00
Darcy Wong
12682c8b8c modify(android): Refactor Keyboard class to not use Map 2020-04-23 15:42:38 +07:00
Darcy Wong
45c09c23e6 modify(android): Convert LanguageListActivity to utility
* Remove LanguageListActivity and KeyboardListActivity
* Keep utility method `getKeyboardsInfo()`
2020-04-22 16:06:54 +07:00
Darcy Wong
51630d4193 Merge remote-tracking branch 'origin/master' into fix/android/layout 2020-04-21 14:06:41 +07:00
jahorton
c9b9c62a8c fix(android): fixes case where banner is intentionally disabled 2020-04-21 12:49:40 +07:00
jahorton
ead9f6b7b2 fix(android): predictive banner display bugfix 2020-04-21 11:15:50 +07:00
Darcy Wong
d49835038b fix(android): Pass keyboard type 2020-04-20 18:01:39 +07:00
Darcy Wong
3eac52752b fix(android): Only apply relative layout ALIGN_PARENT_BOTTOM for inapp keyboard 2020-04-20 15:24:06 +07:00
Darcy Wong
2be7449462 fix(android): Update minimum SDK to 21
Fixes #2989

This updates the minimum supported Android SDK to 21 (Lollipop). This applies to KMEA, KMAPro, Sample Apps, KeyboardHarness, and FV Android app.

Tests/keyCode doesn't use KMEA so no change there.
2020-04-16 11:55:00 +07:00
Darcy Wong
75d444e5b9
Merge pull request #2953 from keymanapp/feat/android/keyman-download
feat(android): Download cloud keyboards from https://keyman.com/keyboards
2020-04-15 09:26:36 +07:00
Darcy Wong
1b2cecfa3f feat(android): Update language settings activity for offline 2020-04-14 14:49:07 +07:00
Darcy Wong
406428a1d5 feat(android): Also download dictionary after installing keyboard package 2020-04-14 13:50:58 +07:00
Darcy Wong
e85b380af6 fix(android): Handle default font DejaVuSans.ttf
Fixes #2977

#2928 removed DejaVuSans.ttf but it turns out the font is still needed for:
* sil_euro_latin OSK to render on Android SDK 19 (KitKat)
* the sample apps and possible 3rd party apps may also be referencing the default font
2020-04-10 09:50:33 +07:00
Darcy Wong
32f272ebc7 fix(android): Address more review comments
* Remove handling deprecated keyman:// protocol
* Pass original URL
* lower-case BCP 47 tag when checking for match
* Clean up logic nesting in KMPBrowserActivity
2020-04-09 11:03:50 +07:00
Darcy Wong
703e6afc72 feat(android): Add utility to check for valid keyman schemes 2020-04-08 14:24:28 +07:00
Darcy Wong
b2db224bbc chore(android): Address review comments 2020-04-08 08:35:53 +07:00
Darcy Wong
142d17a5c2 chore(android): Clean up unused string and spacing 2020-04-07 17:20:30 +07:00
Darcy Wong
e8d7615a78 feat(android): Pass language ID to keyboard search 2020-04-07 17:16:28 +07:00
Darcy Wong
f7f73e0ef2 feat(android): Use https://keyman.com/keyboards/ to add keyboards 2020-04-07 15:31:54 +07:00
Darcy Wong
a084c92456 feat(android): Handle keyman:download scheme for deep linking 2020-04-06 20:39:11 +07:00
Darcy Wong
984d907c92 fix(android): Add check for WRITE_EXTERNAL_STORAGE permissions 2020-04-04 15:37:47 +07:00
Darcy Wong
a21078327b feat(android): Propagate languageID when downloading kmp
This updates how the Keyman app handles URLs for downloading kmp files (in preparation for keyboard picker revamp).

If the URL contains "language" or "platform", those values are propagated for when the kmp gets downloaded.  The "languageID" is then used during kmp installation.

Also fixed a few things with URL handling:
* Catch UnsupportedOperationException if the original URL has invalid query parameters
* Handle DownloadIntentService fails

### User Testing:
Load the Keyman app.
Open a Chrome browser and go to the link:
```
keyman://?filename=sil_cameroon_qwerty.kmp&url=https://keyman.com/keyboard/download?id=sil_cameroon_qwerty&language=bbj-Latn&platform=android
```

The KMP should install and use the specified `bbj-Latn` language (Ghomálá').
Normally, sil_cameroon_qwerty defaults to `aal` (Afade).
2020-04-03 14:37:53 +07:00
Darcy Wong
a9fd474684 fix(android): revert FORCE_RESOURCE_UPDATE that was used for testing 2020-04-02 15:35:58 +07:00
Darcy Wong
8a5756d59f fix(android): Fix exception in ResourcesUpdateTool
Fixes crashlytic issue
https://console.firebase.google.com/u/1/project/kmapro-ee779/crashlytics/app/android:com.tavultesoft.kmapro/issues/5abd6c9831c913e93eb75d28da472079

which affected many users.

The primary fix was checking the context isn't null.

While updating ResourcesUpdateTool(), also added a cleanup method to clear the notification bar when exiting Keyman.
2020-04-01 15:16:25 +07:00
Darcy Wong
a6717bce1e
Merge pull request #2928 from keymanapp/modify/android/sil-eurolatin
modify(android) Install default asset kmp's
2020-04-01 09:11:04 +07:00