Merge branch 'master' into chore/common/10183-unicode-version

This commit is contained in:
Marc Durdin 2024-05-25 05:39:58 +07:00 • committed by GitHub
commit 554c27dfeb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
12 changed files with 66 additions and 15 deletions

View file

@ -25,11 +25,11 @@ jobs:
steps:
- name: Restore artifacts
uses: actions/cache/restore@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
uses: actions/cache/restore@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
with:
path: |
artifacts
key: artifacts-key-${GITHUB_RUN_ID}
key: artifacts-key-${{ github.event.workflow_run.id }}
restore-keys: artifacts-key-
- name: Read environment

View file

@ -315,11 +315,11 @@ jobs:
echo "GIT_USER=${{ github.event.client_payload.user }}" >> artifacts/env
- name: Cache artifacts
uses: actions/cache/save@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
uses: actions/cache/save@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
with:
path: |
artifacts
key: artifacts-key-${GITHUB_RUN_ID}
key: artifacts-key-${{ github.run_id }}
# We intentionally ignore the results of binary_packages_unreleased
set_status:

View file

@ -1,5 +1,20 @@
# Keyman Version History
## 18.0.44 alpha 2024-05-24
* fix(linux): Pass artifacts key to API verification GHA (#11517)
* fix(web): properly pass test-runner verbose-logging flag (#11509)
* chore(developer): add context/key-test (#11512)
* fix(android/engine): Ignore updating invalid selections (#11510)
* docs(common): update min emscripten version in docs to 3.1.46 (#11530)
* fix(linux): Properly use and pass run_id (#11533)
## 18.0.43 alpha 2024-05-24
* fix(android): Revert Sentry version for FV Android (#11522)
* chore(windows): remove schedule task clean up introduced in 15.0 Alpha (#11521)
* fix(windows): add FirstVoices Keyboards build to Windows release build (#11524)
## 18.0.42 alpha 2024-05-23
* chore(web): conversion of Web's browser-integration auto-tests for @web/test-runner use (#11455)

View file

@ -1 +1 @@
18.0.43
18.0.45

View file

@ -194,10 +194,16 @@ final class KMKeyboard extends WebView {
int selMin = icText.selectionStart, selMax = icText.selectionEnd;
int textLength = rawText.length();
if (selMin < 0 || selMax < 0) {
// There is no selection or cursor
// Reference https://developer.android.com/reference/android/text/Selection#getSelectionEnd(java.lang.CharSequence)
return false;
} else if (selMin > textLength || selMax > textLength) {
// Selection is past end of existing text -- should not be possible but we
// are seeing it happen; #11506
return false;
}
if (selMin > selMax) {

View file

@ -386,4 +386,19 @@
<p>The Project Manager allows you to manage all the files related to a keyboard layout in a single location.</p>
</Control>
</Form>
<Form Name="context/key-test">
<Control Name="cmdInsert" Title="Virtual Key Identifier">
<p>This dialog lets you check the virtual key code for any key combination (except Window reserved key combinations such as Alt + Tab). You can then insert the virtual key code into the last active edit window at the current cursor position.</p><br></br>
<p>Press Shift + Enter to insert the current virtual key code into your source at the insertion point.</p>
</Control>
<Control Name="chkLRDistinguish" Title="Virtual Key Identifier">
<p>You can see the virtual key codes for left and right Ctrl / Alt combinations by checking the "Distinguish between left and right ctrl/alt" checkbox.</p>
</Control>
<Control Name="cmdClose" Title="Virtual Key Identifier">
<p>To close the dialog, click the Close button or press Shift + Esc.</p>
</Control>
</Form>
</ContextHelp>

2
docs/build/macos.md vendored
View file

@ -77,7 +77,7 @@ PATH="$HOMEBREW_PREFIX/opt/coreutils/libexec/gnubin:$PATH"
## KeymanWeb Dependencies
* node.js 18+, emscripten, openjdk 8
* node.js 18+, emscripten 3.1.46 or later, openjdk 8
```shell
brew install node emscripten openjdk@8

View file

@ -181,7 +181,7 @@ You can use Windows Settings to add these environment variables permanently:
* KeymanWeb
**Requirements**:
* emscripten 3.1.40
* emscripten 3.1.46 or later
* node.js 18+
* [openjdk 11](https://learn.microsoft.com/en-us/java/openjdk/download#openjdk-11)+
@ -191,7 +191,7 @@ You can use Windows Settings to add these environment variables permanently:
# for *much* faster download, hide progress bar (PowerShell/PowerShell#2138)
$ProgressPreference = 'SilentlyContinue'
choco install emscripten --version 3.1.40
choco install emscripten --version 3.1.46
```
Note: emscripten very unhelpfully overwrites JAVA_HOME, and adds its own

View file

@ -2,10 +2,11 @@
## START STANDARD BUILD SCRIPT INCLUDE
# adjust relative paths as necessary
THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")"
. "${THIS_SCRIPT%/*}/../../..../../resources/build/builder.inc.sh"
. "${THIS_SCRIPT%/*}/../../../../../resources/build/builder.inc.sh"
## END STANDARD BUILD SCRIPT INCLUDE
source "$KEYMAN_ROOT/resources/shellHelperFunctions.sh"
source "$KEYMAN_ROOT/resources/build/build-download-resources.sh"
builder_describe "Installation files for FirstVoices Keyboards" \
@/common/windows/data \
@ -63,7 +64,17 @@ function do_publish() {
-dVERSION=$VERSION_WIN -dRELEASE=$VERSION_RELEASE \
-dPRODUCTID=$GUID1 -dDESKTOPUISOURCE=../xml \
firstvoices.wxs desktopui.wxs
"$WIXLIGHT" -dWixUILicenseRtf=License.rtf -out firstvoices.msi -ext WixUIExtension firstvoices.wixobj desktopui.wixobj
# ICE82: we suppress because it reports spurious errors with merge module
# keymanengine to do with duplicate sequence numbers. Safely ignored.
# ICE80: we suppress because it reports x64 components without targeting x64.
# Safely ignored.
"$WIXLIGHT" \
-sice:ICE82 -sice:ICE80 \
-dWixUILicenseRtf=License.rtf \
-out firstvoices.msi \
-ext WixUIExtension firstvoices.wixobj desktopui.wixobj
#
# Sign the installation archive
@ -107,7 +118,7 @@ function create-setup-inf() {
builder_heading create-setup-inf
echo "[Setup]" > setup.inf
echo "Version=$VersionWin" >> setup.inf
echo "Version=$VERSION_WIN" >> setup.inf
echo "MSIFileName=firstvoices.msi" >> setup.inf
echo "MSIOptions=" >> setup.inf
echo "AppName=FirstVoices Keyboards" >> setup.inf

View file

@ -62,11 +62,11 @@ fi
# Prepare the flags for the karma command.
WTR_DEBUG=
if builder_is_debug_build; then
WTR_DEBUG=" --manual"
WTR_DEBUG="--manual"
fi
# End common configs.
builder_run_action test:dom web-test-runner --config "src/test/auto/dom/web-test-runner${WTR_CONFIG}.config.mjs" "${WTR_DEBUG}"
builder_run_action test:dom web-test-runner --config "src/test/auto/dom/web-test-runner${WTR_CONFIG}.config.mjs" ${WTR_DEBUG}
builder_run_action test:integrated web-test-runner --config "src/test/auto/integrated/web-test-runner${WTR_CONFIG}.config.mjs" "${WTR_DEBUG}"
builder_run_action test:integrated web-test-runner --config "src/test/auto/integrated/web-test-runner${WTR_CONFIG}.config.mjs" ${WTR_DEBUG}

View file

@ -31,3 +31,6 @@ global/delphi/cust/MessageIdentifierConsts.pas
# Coverity intermediate folder and files
cov-int/
keyman-windows-coverity.tgz
# This file is still generated by devtools. TODO: eliminate in future
PathDefines.mak

View file

@ -18,7 +18,8 @@ builder_describe \
":engine Keyman Engine for Windows" \
":desktop Keyman for Windows" \
":components=global/delphi Delphi components" \
":test=test/unit-tests Shared unit tests"
":test=test/unit-tests Shared unit tests" \
":fv=../../oem/firstvoices/windows/src/inst OEM FirstVoices for Windows app"
builder_parse "$@"