Cherry-pick of #5365.
Relates to #949.
Mirror of #5349 (Android), for iOS.
* Adds setSpacebarText() API to Keyman Engine for iOS
* Adds displayName API to Keyman Engine for iOS
* Sets default spacebar text to keyboard name for FirstVoices Keyboards
* Does not add preference UI
Cherry-pick of a3ec34a3ce.
Relates to #949.
* Adds setSpacebarText() API to Keyman Engine for Android
* Adds displayName API to Keyman Engine for Android
* Sets default spacebar text to keyboard name for FirstVoices Keyboards
* Does not include the preference changes to Keyman for Android -- these
will be surfaced as a feature in 15.0.
Fixes#3540.
Merges all relevant changes from Keyman Configuration xml folder into
the FirstVoices Keyboards xml folder.
Adds support for enabling/disabling keyboards for FirstVoices Keyboards.
Renames from Keyman Desktop for FirstVoices to Keyman for FirstVoices.
Fixes#4019.
Rolls back #3009 and fixes base issue in alternative manner.
The core issue here was twofold:
1. We needed to set the window size to the whole screen in order for the
popups to visible and touchable. We implement this in
`onConfigureWindow`.
2. Once our window size is the whole screen, we need to tell the apps
which part of the window is our keyboard UI, in `onComputeInsets`.
This is the only part of the window which impacts the layout of the
underlying app. We had not set the `visibleTopInsets` property and
this caused the WeChat problems.
Finally, in order for this to work, we roll back the original fix
in #3009 as that one breaks the full-screen layout requirement.
Tested with a wide range of apps on Android 10, including WeChat and
Telegram. If @kienwt, @ericjding have capacity, would love to know if
this fix works for them also.
Note that this fix requires changes to consumers of Keyman Engine, so
sample and FV Keyboards updated accordingly.
While it might be nice to add the tag to versions in filenames, this
creates a lot of work on the website where we make some filename
assumptions. So, this PR winds that detail of filename changes back,
and renames copydev.in to download.in to make it consistent with the
other download.in files.
Release build executables should have 3 component version numbers with
the version tag appended, e.g. keymandesktop-14.0.155-alpha-local.exe.
Coming later, rename keymandesktop-version.exe to keyman-version.exe.
This updates the gradle-wrappers for KMEA, KMAPro, and FV app. Gradle version kept at 5.6.4
gradle files auto-generated with:
```
./gradlew wrapper --gradle-version 5.6.4
```
(And changing shebang to `#!/bin/bash`)