Commit graph

927 commits

Author SHA1 Message Date
Darcy Wong
984d907c92 fix(android): Add check for WRITE_EXTERNAL_STORAGE permissions 2020-04-04 15:37:47 +07:00
Darcy Wong
349246a0d7 chore(android): Document rationale for appending to url 2020-04-03 17:26:26 +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
d3610ce746 fix(android): Change KeyboardHarness/build.sh to not rebuild KMEA
On CI, the `android/` folder was getting locked because KeyboardHarness/build.sh would rebuild KMEA without passing `-no-daemon`.

This PR updates KeyboardHarness/build.sh to follow KMAPro and Sample apps build.sh scripts and not build KMEA.

KMEA/build.sh also updated to directly copy the artifact to the KeyboardHarness project
2020-04-03 13:14:20 +07:00
Darcy Wong
8d35295766
Merge pull request #2935 from keymanapp/modify/android/sample-kmp
modify(android): Update sample and test projects to install asset kmp's
2020-04-02 20:46:50 +07:00
Darcy Wong
5a38814696 feat(android): Add project and package source file for keyboardharness 2020-04-02 16:18:37 +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
152168ba8c modify(android): Update sample and test projects to install asset kmp's
Follow-on to #2928 for KMSample1, KMSample2, and keyboardharness projects.

For KMSample1 and KMSample2, also changed keyboard from deprecated legacy [tamil99m](https://keyman.com/keyboards/tamil99m) to release [basic_kbdtam99]
(https://keyman.com/keyboards/basic_kbdtam99).

For Keyboardharness, manually assembled keyboards into a package.
2020-04-02 10:26:48 +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
Darcy Wong
26b296f2b0 fix(android): Fix globe button crash on 3rd party apps
Fixes #2786 as reported by user
2020-04-01 07:06:04 +07:00
Darcy Wong
e2155605ae feat(android): Add utility to get lexical model package version 2020-04-01 06:01:21 +07:00
Darcy Wong
03799ded94 modify(android): Install default asset kmp's 2020-03-31 14:32:34 +07:00
Darcy Wong
a9889d51b4 modify(android): move default kmp packages to KMAPro 2020-03-31 11:59:17 +07:00
Darcy Wong
350068d2c4 feat(android): Specify optional language ID for installing kmp 2020-03-31 11:28:45 +07:00
Darcy Wong
4f138d96e8 feat(android): Simplify paths
* also remove parse-crowdin scripts
2020-03-28 07:08:29 +07:00
Darcy Wong
194ac6ab01 fix(android): Override android_code for pap
Prevent Crowdin from exporting to invalid region `pap-rPAP`.
2020-03-26 17:21:24 +07:00
Darcy Wong
ebf08f12ad feat(common): Start to use crowdin CLI (v3) 2020-03-26 16:30:50 +07:00
Joshua Horton
5b7c4cde9b
Update android/KMEA/app/src/main/assets/keyboard.html
Co-Authored-By: Marc Durdin <marc@durdin.net>
2020-03-24 07:40:17 +07:00
jahorton
670aec6376 fix(web): fixes embedded kbd initialization 2020-03-24 07:21:38 +07:00
Joshua Horton
db00713bfc
Merge pull request #2853 from keymanapp/refactor/web/engine/defaultOutput
refactor(web/engine): Modularize default key output handling
2020-03-23 12:53:02 +07:00
Darcy Wong
25fdd3d150 fix(android): Update min SDK versions for sample apps 2020-03-23 09:00:48 +07:00
Darcy Wong
1e708bfc97 fix(android): Fix min SDK version for Sample and Test apps 2020-03-20 12:19:18 +07:00
jahorton
ce4ea781d0 fix(android): prevents double-ENTER physical type bug 2020-03-20 11:19:19 +07:00
Darcy Wong
975821d510
Merge pull request #2816 from keymanapp/feat/android/rtl
feat(android): Start adding RTL to layouts
2020-03-13 08:07:31 +07:00
Darcy Wong
906c7195f0 fix(android): Add layout_marginStart to activity_web_browser 2020-03-13 08:06:10 +07:00
Darcy Wong
fa082bd6a7
Merge pull request #2810 from keymanapp/fix/android/revert-crash-menu
feat(android): Additional Sentry integration
2020-03-13 07:37:42 +07:00
Darcy Wong
d2add9d061 feat(android): Start adding RTL to layouts 2020-03-12 13:53:57 +07:00
Darcy Wong
eb918fe09b feat(android): Enable psudeo locale
To support RTL, this enables the pseudolocales **English (XA)** and **AR (XB)**
2020-03-12 11:58:04 +07:00
Darcy Wong
170033374e fix(android): Move NPE checks 2020-03-11 18:24:25 +07:00
Darcy Wong
1980f6c37f fix(android): Add null check before sending KMW error 2020-03-11 14:24:15 +07:00
Darcy Wong
69bbc73971 feat(android): Additional Sentry integration
Revert intentional crash from #2778

Now that the call stack in Sentry is tested on Release build
http://sentry.keyman.com/organizations/keyman/issues/61/?project=7

The temporary menu to generate the intentional crash can be removed.

Also disable monitoring Application Not Responding (ANR)
2020-03-11 14:00:27 +07:00
Darcy Wong
c44a7c0113 fix(android): Ignore missing quantity for kmapro 2020-03-10 14:52:47 +07:00
Darcy Wong
eeed1a87c7 feat(android): Update build to ignore implied/missing quantities 2020-03-10 14:29:34 +07:00
Darcy Wong
d87bc5d12f fix(android): Update scripts
* Set base android build.sh to use bash
* Update parse-crowdin.sh to handle Android regions (prefix with `r`)
2020-03-10 13:26:22 +07:00
Darcy Wong
61dabf63a5
Merge pull request #2778 from keymanapp/feat/android/sentry
feat(android): Start of Sentry-based crash reporting
2020-03-10 10:06:31 +07:00
Darcy Wong
e4aa24569d feat(android): Move intentional crash to temp menu 2020-03-10 09:55:17 +07:00
Darcy Wong
524c2d4981 feat(android): Update additional main app strings for crowdin 2020-03-09 13:17:58 +07:00
Darcy Wong
3e90edaa52 test(android): Change shouldUpdateTrueCallTest to span 2 days 2020-03-09 11:33:15 +07:00
Darcy Wong
19bab80487 fix(android): Adjust CI test result location 2020-03-09 10:06:39 +07:00
Darcy Wong
059dac554c fix(android): Add quotes to BUILD_FLAGS 2020-03-09 07:50:12 +07:00
Darcy Wong
44c25b3d6c feat(android): Don't send Sentry event for addKeyboard 2020-03-06 14:29:37 +07:00
Darcy Wong
7d635ac14e test(android): Add temporary code to force crash
This is temporary code for inducing crashes for testing Sentry with the nightly alpha build.
2020-03-06 09:12:15 +07:00
Darcy Wong
6e29aca0de feat(android): Have SystemKeyboard re-init Sentry as needed 2020-03-06 09:02:40 +07:00
Darcy Wong
19a2aea9ad fix(android): Fix build.sh to run unit tests 2020-03-06 06:15:17 +07:00
Darcy Wong
70b60bb852 feat(android): more cleanup and update FV app 2020-03-05 16:55:23 +07:00
Darcy Wong
594306032c chore(android): Cleanup commented code 2020-03-05 16:23:38 +07:00
Darcy Wong
5a7b603698 feat(android): Cleanup unnecessary parts for symbols 2020-03-05 16:15:50 +07:00
Darcy Wong
b241f0b0fe feat(android): Add an event in SystemKeyboard
Also fix debug variant of KMEA
2020-03-05 14:22:54 +07:00
Darcy Wong
36bee5838d Merge remote-tracking branch 'origin/master' into feat/android/sentry 2020-03-05 11:04:39 +07:00