Eberhard Beilharz
8f3ce341f8
fix(android): fix failing test on Windows
...
On Windows the tests failed because the AppData directory doesn't yet
exist under an allowed app internal storage path. This change creates
the directory first when running tests.
2026-09-21 10:10:05 -05:00
Eberhard Beilharz
aee5620dbf
fix(android): add tests for WebViewUtils.buildAssertUrl
...
Also fix `assertEquals` in that test file - the parameter ordering is
`expected, actual` but we had it the other way round which gives a
confusing message if the test fails.
2026-09-21 10:09:59 -05:00
Eberhard Beilharz
48b03579f3
chore(android): address code review comments
...
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-09-21 10:04:41 -05:00
Eberhard Beilharz
1f3fabda78
fix(android): fix loading of keyboards on Android
...
This change moves to using `WebViewAssetLoader` for loading files from
the device instead of using file:// URLs. This fixes the blank keyboard
problem reported in #16096 for Android.
Also make `KMKeyboard.getKeyboardRoot()` private, and rename public
`Keyboard.getKeyboardPath()` to private `Keyboard.getKeyboardUrl()`.
Part-of: #16096
2026-09-21 10:04:38 -05:00
Eberhard Beilharz
3202632780
maint(android): update Android Target API to 36 🍒
...
This change updates the Android Target API to 36 to satisfy the upcoming
annual Play Store Aug 31 requirement. It updates Keyman for Android to
use API level 36 by changing the compileSdk and targetSdkVersion
properties to 36.
Also update `compileSdkVersion` and some reformatting in `README.md`.
Changes made by AI (Gemini 3 Flash Preview).
Fixes : #16279
Build-bot: release:android
Cherry-pick-of: #16280
2026-09-21 10:35:27 +02:00
Eberhard Beilharz
5883c9092f
chore(android): log legacy cloud keyboards 🍒
...
This adds a Sentry log if a user is still using legacy cloud keyboards.
We do this so that we will learn if there are still users out there
or if we can remove the code that deals with those keyboards.
Cherry-pick-of: #16237
Test-bot: skip
2026-07-14 18:13:52 +02:00
Darcy Wong
eeffb2cdf8
fix(android): Set the main app background white
2025-10-20 15:26:55 +07:00
Darcy Wong
6cb9749256
fix(android): Refactor bottom inset calculations for inapp and system
2025-10-09 06:42:57 +07:00
Darcy Wong
c0a0d879b4
fix(android): Convert longpress delay menu to ConstraintLayout
2025-10-08 15:26:06 +07:00
Darcy Wong
7337952f6f
docs(android): Document getNavigationBarHeight API
2025-09-25 20:58:05 +07:00
Darcy Wong
cb9e295d46
cherrypick(android): Fix bottom insets for KMSample2 and FirstVoices
2025-09-25 20:57:32 +07:00
Darcy Wong
94535521fd
cherrypick(android): Apply bottom insets to system keyboard
2025-09-25 20:56:52 +07:00
Darcy Wong
ee90c4308b
fix(android): Update KMSample1 when changing orientation
2025-09-03 09:57:55 +07:00
Darcy Wong
51645c1e91
fix(android): Cl;eanup list layout in Engine and FirstVoices for edge to
2025-09-02 07:36:00 +07:00
Darcy Wong
482b6df3de
fix(android): Update Sample, Test, and FirstVoices apps for edge to edge
...
fix(android): Update Sample, Test, and FirstVoices apps for edge to edge 🪟
2025-09-02 07:35:43 +07:00
Darcy Wong
3735b10a76
fix(android): Fix insets for in-app vs system keyboard
2025-08-29 08:05:00 +07:00
Darcy Wong
cbcb2cc2a2
fix(android): Update other activities for edge to edge
2025-08-25 09:44:36 +07:00
Darcy Wong
6d07af25b2
fix(android): Convert Keyman app layout to use ConstraintLayout
2025-08-25 09:44:35 +07:00
Darcy Wong
16ea45f9f7
fix(android): Update to Java 21 and Gradle dependencies
2025-08-25 09:00:06 +07:00
Darcy Wong
e2b5063f30
fix(android): Update Android Target API to 35
2025-08-22 11:26:44 +07:00
Darcy Wong
0457b55074
Merge pull request #14561 from keymanapp/cherrypick/android/show-osk-preference
...
fix(android): Add preference to show on-screen keyboard to Keyman and FirstVoices apps 🍒 🏠
2025-08-21 07:47:09 +07:00
Darcy Wong
44c68c53dd
Merge pull request #14547 from keymanapp/cherrypick/android/14538-show-osk
...
fix(android): Show system OSK when physical keyboard connected 🍒 🏠
2025-08-21 07:46:48 +07:00
Darcy Wong
5aa99752c9
Merge pull request #14560 from keymanapp/fix/android/sentry-7
...
fix(android): Update sentry-android dependency to 7.22.6 for 16 KB page alignment 🍒 🏠
2025-08-21 07:45:42 +07:00
Darcy Wong
60411736e6
fix(android): Add "Show On-screen keyboard" preference
...
fix(android): Add "Show On-screen keyboard" preference to display OSK when physical keyboard is connected 👁️
2025-08-20 09:41:13 +07:00
Darcy Wong
764aec33d0
fix(android): Update sentry-android to 7.22.6
2025-08-20 09:14:20 +07:00
Joshua Horton
08a69b95d5
change(android): check globalThis before polyfill
2025-08-19 08:35:16 -05:00
Joshua Horton
0e8f34a2b3
docs(android): add min Chrome version in polyfill doc
2025-08-19 08:35:16 -05:00
Joshua Horton
2cee36e86b
fix(android): polyfill globalThis for API 28 devices
...
Fixes : #14450
Cherry-pick-of: #14541
2025-08-19 08:35:07 -05:00
Darcy Wong
31f5e43958
fix(android): Show system OSK when physical keyboard connected
2025-08-19 09:26:23 +07:00
Darcy Wong
7c3f91c415
fix(android): Get default sizes before initializing keyboard
2025-08-07 10:55:12 +07:00
Joshua Horton
261283d356
change(android): address PR review concerns
2025-05-21 08:08:24 +07:00
Joshua Horton
c193c3fe17
feat(android): log installed keyboard count
2025-05-21 08:08:24 +07:00
Joshua Horton
5116c3e749
feat(android): log active keyboard, model IDs with reported errors
...
Cherry-pick-of: #13983
To facilitate code investigation and issue repro attempts, we should log the
engine's current keyboard, language code, and model when reporting errors.
Fixes: KEYMAN-ANDROID-71V
(As this adds Sentry logging, I needed a reliable error with inspectable logs
for development.)
Test-bot: skip
2025-05-21 08:08:24 +07:00
Darcy Wong
6662b61291
fix(android): Use Alert Dialog if keyboard pkg missing languages
...
Cherry-pick-of: #13786
2025-04-30 09:36:30 +07:00
Darcy Wong
1994b273a1
fix(android): Apply review suggestions
2025-04-22 10:29:22 +07:00
Darcy Wong
2fb71a1898
fix(android): Check if RELEASE_OEM_FIRSTVOICES not set
2025-04-22 10:21:32 +07:00
Darcy Wong
157b7bb54b
fix(android): Require RELEASE_OEM env vars to build FirstVoices Android
2025-04-22 10:02:55 +07:00
Darcy Wong
0affbd6d4b
docs(android): Update documentation
2025-04-11 11:07:17 +07:00
Darcy Wong
23fb318549
fix(android): Fix system keyboard banner on reload
...
Follows the in-app keyboard pattern of refreshing banner theme when the keyboard is shown
Fixes : #13693
2025-04-11 10:57:36 +07:00
Darcy Wong
c5c111bbe7
Merge pull request #13691 from keymanapp/chore/crowdin-es419
...
chore(android,mac,windows): Update crowdin strings for Spanish Latin America
2025-04-10 16:53:49 +07:00
Darcy Wong
b56a02fdf8
fix(android): Downgrade UnknownHostException error to info
...
Fixes KEYMAN-ANDROID-51P
2025-04-09 13:15:16 +07:00
Darcy Wong
30dc85f484
chore(common): Update crowdin strings for Spanish Latin America
2025-04-09 07:44:32 +07:00
Darcy Wong
e8b9fe3c93
Merge pull request #13673 from keymanapp/fix/android/banner-xxxhdpi
...
docs(android): Document default keyboard height for xxxhdpi devices
2025-04-09 06:31:36 +07:00
Darcy Wong
0d2c001e48
Merge pull request #13681 from keymanapp/chore/common/crowdin-km
...
chore(android,mac,windows): update Crowdin strings for Khmer
2025-04-07 15:57:35 +07:00
Darcy Wong
8d012bb8a1
chore(android): Update crowdin strings for Khmer
2025-04-07 08:52:16 +07:00
Darcy Wong
9ff6858613
chore(android): Update crowdin strings for Czech
2025-04-07 08:41:03 +07:00
Darcy Wong
f03096a34f
docs(android): Add xxxhdpi keyboard height
2025-04-04 14:11:01 +07:00
Darcy Wong
3bd69f182e
fix(android): Adjust keyboard height for 10" tablet landscape
2025-04-04 08:36:05 +07:00
Darcy Wong
8cc35dfdf3
fix(android): Adjust keyboard and banner height for 7" tablet
2025-04-04 07:42:54 +07:00
Darcy Wong
3d127f0f7d
docs(android): Update table documentation
2025-04-03 11:12:35 +07:00