Commit graph

934 commits

Author SHA1 Message Date
Darcy Wong
ca3c19441b fix(android): Update sentry-android to 8.19.1 2025-08-20 07:29:31 +07:00
Marc Durdin
81c807c257 chore(common): Merge branch 'master' into maint/common/14453-move-ci-scripts 2025-08-19 10:46:11 +02:00
Darcy Wong
eaec803701
Merge branch 'master' into fix/android/edge-to-edge-activities 2025-08-18 14:14:54 +07:00
Darcy Wong
84c6d72e8f chore(android): Remove old import 2025-08-18 14:14:09 +07:00
Darcy Wong
7e5e117901
Merge pull request #14396 from keymanapp/fix/android/constraint-layout
fix(android): Convert Keyman app layout to use ConstraintLayout for handling edge-to-edge 🪟
2025-08-18 14:11:51 +07:00
Darcy Wong
5e62747cf1
Merge branch 'master' into main/android/taregt-api-35 2025-08-12 15:36:25 +07:00
Marc Durdin
a81138c62b
Merge pull request #14449 from keymanapp/maint/common/14065-consolidate-builder-scripts
maint(common): consolidate builder scripts 🐸
2025-08-12 10:41:09 +07:00
Marc Durdin
f95b26ac1f
Merge pull request #14446 from keymanapp/maint/common/14275-rename-and-cleanup-shellHelperFunctions.sh
maint(common): rename shellHelperFunctions.sh to utils.inc.sh 🐸
2025-08-12 10:40:59 +07:00
Darcy Wong
3ceccfc054 chore(android): Specify Java language version 21
Resolves Gradle deprecation and language version warnings
```gradle
Java compiler version 21 has deprecated support for compiling with source/target version 8.
```

The `java.toolchain.languageVersion` syntax is a superset that covers the previous syntax `android.compileOptions`
2025-08-11 11:44:51 +07:00
Darcy Wong
9f92f44e8b fix(android): Update other activities for edge to edge 2025-08-06 11:30:13 +07:00
Marc Durdin
f3fb3ac87b maint(common): move build-utils-ci.inc.sh to ci/ci-publish.inc.sh
Removes a number of unused functions from the file, renames remaining
functions to match our builder script prefix patterns, removes unused
imports from various build scripts (e.g. Android).

Fixes: #14453
2025-08-05 12:54:56 +10:00
Marc Durdin
f394245636 maint(common): consolidate builder scripts
Clarifies the confusing builder.inc.sh / build-utils.sh distinction by
giving the scripts more appropriate names. Most build scripts should use
builder-full.inc.sh; some helper scripts can use builder-basic.inc.sh.
Documented in resources/build/README.md.

Renames:
* resources/build/builder.inc.sh to resources/build/builder-full.inc.sh
* resources/build/build-utils.sh to resources/build/builder-basic.inc.sh

Other changes:
* Moves Android-specific functions out of builder-basic.inc.sh and into
  android/build.sh.
* Renames functions in builder-basic.inc.sh

More functions may be moved from builder-basic.inc.sh into utils.inc.sh
or other scripts in the future.

Fixes: #14065
Build-bot: build all
Test-bot: skip
2025-08-02 08:11:24 +10:00
Marc Durdin
65158a0526 maint(common): rename shellHelperFunctions.sh to utils.inc.sh
Adds documentation for various functions, removes unused functions (a
couple of simple, very lightly used functions were unDRYed; these could
go back the other way across all shell scripts if necessary). TODO items
noted for follow-up refactoring.

Fixes: #14275
Relates-to: #14269
Build-bot: build all
Test-bot: skip
2025-08-02 06:58:40 +10:00
Darcy Wong
f6120747ad chore(android): Remove unused constraintlayout-compose dependency 2025-07-31 07:09:35 +07:00
Darcy Wong
85986dd6d8 fix(android): Convert to ConstraintLayout and apply insets
Using Android Studio's tool to convert the top level RelativeLayout to ConstraintLayout. This way, the edge-to-edge doesn't cover up the top and bottom portions of the app.

Also apply insets so app and keyboard fit in usable areas.
2025-07-30 14:12:03 +07:00
Darcy Wong
02fc68790b fix(android): Fix targetSdkVersion for the app 2025-07-24 14:39:12 +07:00
Darcy Wong
ed7c0caf9d maint(android): Update Android Target API to 35 2025-07-24 08:04:50 +07:00
Darcy Wong
6148495e27 refactor(android): Update minimum required Chrome version to 95.0
* Change from 57.0 to 95.0 as the minimum target version of Chrome
* Refactor Chrome version check to use constants, and updated applicable strings
2025-07-23 08:47:57 +07:00
Darcy Wong
0f03bbf929 fix(android): Check network access before trying to download keyboard
Display a Toast notification if network is unavailable before downloading from the keyboard page

Fixes: #13977
Fixes: KEYMAN-ANDROID-420
2025-05-19 11:46:21 +07:00
Eberhard Beilharz
b4cd5a24e4
Merge pull request #13898 from keymanapp/maint/android/13896_TIER
PR #13854 missed (at least) one place when renaming the variables from `TIER` to `KEYMAN_TIER`. This change fixes the release builds for Android.
    
Follow-up-of: #13854
Fixes: #13896
2025-05-13 09:25:02 +02:00
Eberhard Beilharz
a3b63008ef
maint(android): use new variable name KEYMAN_TIER
PR #13854 missed (at least) one place when renaming the variables from
`TIER` to `KEYMAN_TIER`. This change fixes the release builds for
Android.

Follow-up-of: #13854
Fixes: #13896
Test-bot: skip
2025-05-13 08:56:02 +02:00
Darcy Wong
eedfcf2f0e chore: Merge remote-tracking branch 'origin/master' 2025-05-13 07:05:25 +07:00
Darcy Wong
5f0cd83d05 maint(android): Update Gradle to use Java 21 2025-05-08 12:57:17 +07:00
Eberhard Beilharz
4d81589f48
maint(common): use unique names for Keyman version variables
Previously the builder scripts defined a readonly `VERSION` environment
variable for the Keyman version. That caused problems when another
(external) script tried to define a `VERSION` variable. We encountered
this problem when trying to move the TC build steps of a configuration
into a single script (#13399) when we tried to source `~/.nvm/nvm.sh`.

This change uses a Keyman specific prefix for the version variables and
renames `VERSION` → `KEYMAN_VERSION` etc. Unfortunately these variables
are used in a lot of places, so this turned out to be a bit of a yak
shave.

Test-bot: skip
2025-05-07 18:46:51 +02:00
Darcy Wong
73dcf20085
Merge pull request #13772 from keymanapp/chore/android/builder-is-ci-build
chore(android): Use `builder_is_ci_build` rather than `--ci` flag
2025-05-01 07:16:11 +07:00
Darcy Wong
86740c9a91 fix(android): Show Dialog instead of Toast if package missing languages
If a keyboard package is missing associated languages, show an error dialog instead of Toast notification., This way we don't clutter Sentry with noise.

Fixes: #13782

Fixes: KEYMAN-ANDROID-251
2025-04-29 11:11:10 +07:00
Darcy Wong
b9f1f51a33 chore(android): Use builder_is_ci_build rather than --ci flag 2025-04-28 10:42:52 +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
30dc85f484 chore(common): Update crowdin strings for Spanish Latin America 2025-04-09 07:44:32 +07:00
Darcy Wong
3abe596361 fix(android): Add back button to "Adjust Keyboard Height "menu
Add back button and callback handler
2025-04-02 10:19:29 +07:00
Marc Durdin
690d62ca3f fix(android): Move responsibility for setting keyboard height preference
Cherrypick of #13578 to beta

Moves responsibility for setting keyboard height preference into `applyKeyboardHeight()`
2025-04-01 14:10:55 +07:00
Darcy Wong
75bf69bfbf fix(android): Cleanup comments
Cleanup references to mayPredictOverride in comments
2025-03-24 10:27:50 +07:00
Darcy Wong
9d8f71a718 refactor(android): Rename mayPredictOverrides APIs
Per review comments, rename these API's for Keyman 18.0:

inAppMayPredictOverride --> inAppPredictionsSuspendedForSensitiveInput
systemMayPredictOverride --> systemPredictionsSuspendedForSensitiveInput

getMayPredictOverride() --> getPredictionsSuspended()
setMayPredictOverride() --> setPredictionsSuspended()
2025-03-24 08:19:35 +07:00
Darcy Wong
1da411727a refactor(android): split mayPredictOverride for inapp and system kbd
Refactor mayPredictOverride so the banner toggle is handled independently for `KeyboardType.KEYBOARD_TYPE_INAPP` and `KeyboardType.KEYBOARD_TYPE_SYSTEM` keyboards.

Pre-existing override API calls are now for `KeyboardType.KEYBOARD_TYPE_SYSTEM`
2025-03-20 11:39:02 +07:00
Darcy Wong
9afcf8f2b0 fix(android): Restore banner after lock screen
Fix banner transitions on lock screen and resuming
2025-03-20 07:43:03 +07:00
Darcy Wong
00552cb06c chore(android): update crowdin strings for Spanish (Latin America) 2025-03-14 09:12:49 +07:00
Darcy Wong
d9a3c01c4f fix(android): Cache inputType to determine external keyboard handling 2025-03-11 09:39:03 +07:00
Darcy Wong
1380597be2
Merge branch 'beta' into chore/common/crowdin-vi 2025-03-05 19:45:39 +07:00
Darcy Wong
c65897561f fix(android): Fix Toast message per review comment 2025-03-04 17:10:39 +07:00
Darcy Wong
bc2eeb62d0 chore(android): Tweak names to describe context 2025-02-25 10:16:06 +07:00
Darcy Wong
118e15bfd4 fix(android): Control when system keyboard Keyboard Picker clears 2025-02-24 08:34:57 +07:00
Darcy Wong
1a1056ca50 chore(common): Add crowdin strings for Vietnamese 2025-02-22 07:37:36 +07:00
Darcy Wong
9712e3b798
Merge pull request #13273 from keymanapp/fix/android/adjust-osk-height-rotate
fix(android): Update system keyboard height consistently
2025-02-21 13:34:37 +07:00
Darcy Wong
2a472abfad chore: Merge remote-tracking branch 'origin/beta' into chore/crowdin/polytonic-greek-update
# Keyman Conventional Commit suggestions:
#
# - Link to a Sentry issue with git trailer:
#     Fixes: _MODULE_-_ID_
# - Give credit to co-authors:
#     Co-authored-by: _Name_ <_email_>
# - Use imperative, present tense ('attach' not 'attaches', 'attached' etc)
# - Don't include a period at the end of the title
# - Always include a blank line before trailers
# - More: https://github.com/keymanapp/keyman/wiki/Pull-Request-and-Commit-workflow-notes
2025-02-19 09:08:24 +07:00
Darcy Wong
af9d7bbe46 chore(common): Update crowdin strings for Polytonic Greek 2025-02-19 06:54:56 +07:00
Darcy Wong
8b4e769385 fix(android): Update system keyboard height consistently 2025-02-18 14:26:13 +07:00
Darcy Wong
77b5cff622 fix(android): Correct the scope of tier in build.gradle 2025-02-18 09:12:59 +07:00
Joshua Horton
fff9ba45ef
Merge pull request #13218 from keymanapp/fix/android/prevent-update-check-crashes
fix(android): prevent update-checks from crashing system keyboard and app if `DownloadManager` is disabled
2025-02-17 14:36:54 +07:00
Joshua Horton
2437ff5cc2 chore(android): and another, plus removal of accidental typo 2025-02-17 09:45:05 +07:00
Joshua Horton
81e84b6147 chore(android): remove unused imports 2025-02-17 09:28:17 +07:00