Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: merge master into linux-mcompile 🐘 #12532

Merged
merged 221 commits into from
Oct 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
221 commits
Select commit Hold shift + click to select a range
9e17f7f
Add context/options
Nnyny May 27, 2024
8e00330
Update developer/src/tike/xml/help/contexthelp.xml
Nnyny May 28, 2024
73f8477
Update developer/src/tike/xml/help/contexthelp.xml
Nnyny May 28, 2024
518a13a
Update contexthelp.xml
Nnyny May 28, 2024
6627d4e
chore: remove 'chkShowStartupDialog' and 'chkAllowMultipleInstances'
Nnyny May 30, 2024
7d67ac5
Merge branch 'master' into context/options
mcdurdin Jun 7, 2024
90ec331
chore(developer): add initial context test cases in GetXStringImpl ty…
markcsinclair Jul 22, 2024
5349ab5
chore(developer): add six additional context test cases
markcsinclair Jul 22, 2024
bd38faf
chore(developer): add two test cases for spaces around context offset
markcsinclair Jul 22, 2024
4ea1766
chore(developer): Merge branch 'test/developer/kmcmplib-compiler-unit…
markcsinclair Jul 24, 2024
d1be0f2
chore(developer): uncomment two test cases due to compiler fixes #119…
markcsinclair Jul 24, 2024
194bfd6
chore(developer): Merge branch 'master' into test/developer/kmcmplib-…
markcsinclair Jul 26, 2024
2d7683c
chore(developer): Merge branch 'master' into test/developer/kmcmplib-…
markcsinclair Jul 31, 2024
c44dc6c
chore(developer): Merge branch 'master' into test/developer/kmcmplib-…
markcsinclair Aug 12, 2024
bbcb2cc
chore(developer): correct return codes in GetXStringImpl_type_c follo…
markcsinclair Aug 12, 2024
700b77f
chore(developer): rewrite ReportCompilerMessage test following refactor
markcsinclair Aug 12, 2024
eddf51d
chore(developer): Merge branch 'master' into test/developer/kmcmplib-…
markcsinclair Aug 19, 2024
06faa71
chore(developer): add clearcontext test case to GetXStringImpl_type_c…
markcsinclair Aug 19, 2024
d552e57
chore(developer): add first test case for call in GetXStringImpl_type…
markcsinclair Aug 19, 2024
eaa654c
chore(developer): add six call test cases to GetXStringImpl_type_c te…
markcsinclair Aug 19, 2024
5fc7a26
chore(developer): remove test cases for call() in GetXStringImpl_type…
markcsinclair Aug 22, 2024
bd1d593
chore(developer): add a valid context test case, and remove unnecessa…
markcsinclair Aug 22, 2024
242ccee
chore(developer): remove unnecessary local variables in two outs test…
markcsinclair Aug 22, 2024
64193bd
chore(developer): remove unnecessary local variables in three index t…
markcsinclair Aug 22, 2024
f92b2e1
chore(developer): remove unnecesary local variables from two if test …
markcsinclair Aug 22, 2024
c1c4c63
chore(developer): remove unnecesary local variables from two baselayo…
markcsinclair Aug 22, 2024
2de7c26
chore(developer): remove unnecesary local variables from two any test…
markcsinclair Aug 22, 2024
758a398
chore(developer): Merge branch 'master' into test/developer/kmcmplib-…
markcsinclair Aug 26, 2024
ec5a749
chore(developer): initial GetXStringImpl_type_n test
markcsinclair Aug 26, 2024
ef4a14b
chore(developer): add ten test cases for notany() to GetXStringImpl_t…
markcsinclair Aug 26, 2024
8c79a04
chore(developer): add test case for notany() with empty store
markcsinclair Aug 26, 2024
437420d
chore(developer): add test case for nul to GetXStringImpl_type_n test
markcsinclair Aug 26, 2024
8522c57
chore(developer): add versions where omitted from some notany() test …
markcsinclair Aug 26, 2024
8dd236c
chore(developer): add initial four test cases for unicode in GetXStri…
markcsinclair Aug 26, 2024
3cd34e2
chore(developer): add ERROR_InvalidCharacter and n1 only test cases t…
markcsinclair Aug 26, 2024
1fe11ed
chore(developer): Merge branch 'master' into test/developer/kmcmplib-…
markcsinclair Aug 26, 2024
cb9b2c5
chore(developer): manual merging of the two GetXStringImpl_type_c tests
markcsinclair Aug 26, 2024
b628245
chore(developer): unicode group checks in GetXStringImpl_type_u test
markcsinclair Aug 26, 2024
2bd2697
chore(developer): correct order of paramaters in EXPECT_EQ to expecte…
markcsinclair Aug 26, 2024
3ed83f8
chore(developer): clarify some comments in index() section of GetXStr…
markcsinclair Aug 29, 2024
67b2050
Merge branch 'master' into test/developer/kmcmplib-compiler-unit-tests-3
markcsinclair Sep 3, 2024
18e7a1e
change(mac): remove Always show OSK option
sgschantz Sep 3, 2024
a032f80
change(mac): read and write new osk window state
sgschantz Sep 4, 2024
78fd4ee
change(mac): renaming, use client map instead of servers array
sgschantz Sep 6, 2024
0a43607
Merge branch 'master' into test/developer/kmcmplib-compiler-unit-tests-3
markcsinclair Sep 9, 2024
b8cbf04
change(mac): added KMInputMethodLifecycle
sgschantz Sep 10, 2024
b3651f0
change(mac): renamed property and cleaned up comments
sgschantz Sep 11, 2024
094aa98
chore(deps): bump express from 4.19.2 to 4.20.0
dependabot[bot] Sep 11, 2024
e4017a8
fix(developer): rewrite ldml visual keyboard compiler
mcdurdin Sep 11, 2024
b7810bd
fix(developer): check vars string usage before definition
mcdurdin Sep 12, 2024
f0be2ac
chore(developer): Merge branch 'master' into test/developer/kmcmplib-…
markcsinclair Sep 12, 2024
a99ca4f
change(mac): overhauled logic for determining input method state
sgschantz Sep 12, 2024
a50a089
Merge branch 'master' into change/mac/12342-remove-always-show-osk
sgschantz Sep 12, 2024
d664797
change(mac): attempt to fix sequoia failure to deactivate
sgschantz Sep 13, 2024
4ec6144
change(mac): added delays before inputmethod state transition
sgschantz Sep 13, 2024
f84cb89
auto: increment master version to 18.0.112
keyman-server Sep 13, 2024
947a5fd
Merge pull request #12419 from keymanapp/auto/version-master-18.0.112
keyman-server Sep 13, 2024
bf25a6e
Merge pull request #12396 from keymanapp/dependabot/npm_and_yarn/expr…
mcdurdin Sep 14, 2024
ce1898a
auto: increment master version to 18.0.113
keyman-server Sep 14, 2024
b79277b
Merge pull request #12422 from keymanapp/auto/version-master-18.0.113
keyman-server Sep 14, 2024
1ec1f0e
refactor(common): move help into common prod/docs/help folders
mcdurdin Sep 15, 2024
0e5fbb2
refactor(common): fixup help path script references
mcdurdin Sep 15, 2024
b751336
refactor(developer): copy dev 17.0 help into repo
mcdurdin Sep 16, 2024
24830f4
change(mac): improved comments and increased delay to 0.25
sgschantz Sep 16, 2024
e376537
chore(developer): upload help to help.keyman.com
mcdurdin Sep 16, 2024
f4321b3
fix(developer): LDML compiler, add TSS_VISUALKEYBOARD store when comp…
mcdurdin Sep 16, 2024
ae62390
Update developer/src/kmcmplib/tests/gtest-compiler-test.cpp
markcsinclair Sep 16, 2024
d91ca9b
Update developer/src/kmcmplib/tests/gtest-compiler-test.cpp
markcsinclair Sep 16, 2024
5497e9c
Update developer/src/kmcmplib/tests/gtest-compiler-test.cpp
markcsinclair Sep 16, 2024
b50a16b
chore(developer): Merge branch 'master' into test/developer/kmcmplib-…
markcsinclair Sep 16, 2024
ff504ad
chore(developer): corrected issue references that mistakenly referenc…
markcsinclair Sep 16, 2024
31e213f
Merge pull request #11990 from keymanapp/test/developer/kmcmplib-comp…
markcsinclair Sep 16, 2024
2b36451
auto: increment master version to 18.0.114
keyman-server Sep 16, 2024
c9b5088
Merge pull request #12428 from keymanapp/auto/version-master-18.0.114
keyman-server Sep 16, 2024
6b83589
Merge pull request #12402 from keymanapp/fix/developer/12395-rewrite-…
mcdurdin Sep 16, 2024
201f48a
Merge pull request #12404 from keymanapp/fix/developer/12403-validate…
mcdurdin Sep 16, 2024
9b31b2d
fix(android): Remove banner toggle
darcywong00 Sep 17, 2024
5939194
docs(android): Remove placeholder docs for banner toggle
darcywong00 Sep 17, 2024
492baea
Merge pull request #12355 from keymanapp/change/mac/12342-remove-alwa…
sgschantz Sep 17, 2024
7c365e3
chore: update contexthelp.xml
Nnyny Sep 17, 2024
becea93
change(mac): remove verbose logging option
sgschantz Sep 17, 2024
96f6654
chore(developer): remove .js output from LDML compiler
mcdurdin Sep 17, 2024
44116b7
chore(common): detect ssh remotes in git hooks
ermshiperete Sep 17, 2024
17912a5
fix(common): add proper configure output for hextobin
ermshiperete Sep 17, 2024
0dbae5c
fix(core): add missing dependency for core
ermshiperete Sep 17, 2024
1c5f2dc
auto: increment master version to 18.0.115
keyman-server Sep 17, 2024
7263fcf
Merge pull request #12435 from keymanapp/auto/version-master-18.0.115
keyman-server Sep 17, 2024
389fb4f
chore(common): Allow to build offline
ermshiperete Sep 16, 2024
7f7bbd4
change(mac): fix sample app build error
sgschantz Sep 19, 2024
2793203
fix(android): Hide suggestion banner on password fields
darcywong00 Sep 19, 2024
4927922
feat(android): Add radio-button selections for auto-correct
darcywong00 Sep 19, 2024
9096105
chore(android): Disable debug log
darcywong00 Sep 19, 2024
90078b4
Merge pull request #12437 from keymanapp/chore/common/hooks
ermshiperete Sep 19, 2024
664f7ab
Merge pull request #12440 from keymanapp/fix/common/dependency
ermshiperete Sep 19, 2024
090a331
Merge pull request #12438 from keymanapp/fix/core/dependency
ermshiperete Sep 19, 2024
4ed865c
Merge pull request #12432 from keymanapp/chore/developer/remove-js-fr…
mcdurdin Sep 19, 2024
7bd7d63
auto: increment master version to 18.0.116
keyman-server Sep 19, 2024
6c491a6
Merge pull request #12445 from keymanapp/auto/version-master-18.0.116
keyman-server Sep 19, 2024
0a5b185
docs(common): Document how to skip generating CDN on websites
darcywong00 Sep 20, 2024
d28c2f3
Merge pull request #12431 from keymanapp/change/mac/11525-remove-verb…
sgschantz Sep 20, 2024
a14a988
feat(mac): logging changes
sgschantz Sep 20, 2024
0dc7bac
feat(mac): get key_list from core
sgschantz Sep 20, 2024
03e2ba0
Merge pull request #12439 from keymanapp/chore/common/offline
ermshiperete Sep 20, 2024
06896a9
auto: increment master version to 18.0.117
keyman-server Sep 20, 2024
ba5d448
Merge pull request #12447 from keymanapp/auto/version-master-18.0.117
keyman-server Sep 20, 2024
813da7d
feat(mac): created CoreKeyboardInfo to analyze key mappings
sgschantz Sep 23, 2024
e35bb72
chore(deps-dev): bump rollup from 4.16.4 to 4.22.4
dependabot[bot] Sep 24, 2024
25ea6a7
fix(developer): use richedit in debug memo to support Egyptian cartou…
mcdurdin Sep 24, 2024
47f0c78
Merge pull request #12446 from keymanapp/docs/websites/debug-no-cdn
darcywong00 Sep 25, 2024
f06d88b
Merge pull request #12430 from keymanapp/fix/android/banner-toggle
darcywong00 Sep 25, 2024
2c3ae9e
fix(developer): prevent invalid string ids
mcdurdin Sep 25, 2024
becba77
Merge pull request #12442 from keymanapp/fix/android/disable-banner-p…
darcywong00 Sep 25, 2024
ac2909f
Merge pull request #12465 from keymanapp/fix/developer/12451-prevent-…
mcdurdin Sep 25, 2024
71079a2
feat(mac): encapsulate option to alt logic in KMModifierMapping
sgschantz Sep 25, 2024
71f3d91
fix(developer): ignore excess whitespace in `<row keys>` attribute
mcdurdin Sep 25, 2024
3d8d401
auto: increment master version to 18.0.118
keyman-server Sep 25, 2024
98566b4
Merge pull request #12469 from keymanapp/auto/version-master-18.0.118
keyman-server Sep 25, 2024
87aff8d
fix(developer): publish developer-utils package during build
mcdurdin Sep 25, 2024
035af72
docs: tweak content
mcdurdin Sep 25, 2024
0b09ffa
Merge branch 'master' into context/options
mcdurdin Sep 25, 2024
9e6ab2e
Merge pull request #11566 from Nnyny/context/options
mcdurdin Sep 25, 2024
83b7211
Merge pull request #12462 from keymanapp/dependabot/npm_and_yarn/roll…
mcdurdin Sep 25, 2024
870dcab
Merge pull request #12468 from keymanapp/fix/developer/12449-row-keys…
mcdurdin Sep 25, 2024
4b1e137
chore(common): Merge branch 'master' into refactor/common/12347-reorg…
mcdurdin Sep 25, 2024
18d31a8
Merge branch 'refactor/common/12347-reorg-help' into refactor/develop…
mcdurdin Sep 25, 2024
87db5fb
chore(developer): fixup missing documentation images
mcdurdin Sep 25, 2024
70ed0b5
feat(mac): transform left option modifier to right option
sgschantz Sep 26, 2024
8821a81
Merge branch 'master' into feat/mac/933-alt-option-rules
sgschantz Sep 26, 2024
e064024
Merge pull request #12424 from keymanapp/refactor/common/12347-reorg-…
mcdurdin Sep 26, 2024
3fab6c2
fix(linux): ignore additional C++ symbol in API check
ermshiperete Sep 26, 2024
60d888a
Merge pull request #12471 from keymanapp/fix/developer/12426-publish-…
mcdurdin Sep 26, 2024
d7a69d9
Merge pull request #12474 from keymanapp/fix/linux/apicheck
ermshiperete Sep 26, 2024
275c352
auto: increment master version to 18.0.119
keyman-server Sep 26, 2024
352000d
Merge pull request #12477 from keymanapp/auto/version-master-18.0.119
keyman-server Sep 26, 2024
7ff8c70
fix(developer): warn before importing over touch layout
mcdurdin Sep 27, 2024
fa0f2ea
Update kmx-plus-file-format.md
DavidLRowe Sep 27, 2024
a6f9082
Apply suggestions from code review
darcywong00 Sep 27, 2024
cc2bc23
Merge branch 'master' into feat/android/auto-correct-radio-buttons
darcywong00 Sep 27, 2024
6abd59b
feat(mac): renaming and moved adjustModifiers to KMModifierMapping
sgschantz Sep 27, 2024
6eba88c
fix(android): Use SuggestionType methods instead of magic numbers
darcywong00 Sep 27, 2024
14fff2d
chore(linux): display branch name with API verification
ermshiperete Sep 27, 2024
968c971
chore(common): improve configuration detection for hextobin
ermshiperete Sep 27, 2024
7e631c1
feat(common): unified xml parser scaffolding
srl295 Sep 27, 2024
d552b44
chore(common): use node to touch file
ermshiperete Sep 27, 2024
609faf8
feat(common): unified xml parser reader test
srl295 Sep 27, 2024
7da7375
feat(common): xml: map \r\n to \n
srl295 Sep 27, 2024
3832ca1
feat(developer,common): use unified xml parser
srl295 Sep 27, 2024
d540e4c
feat(common): unified xml writer test
srl295 Sep 27, 2024
1780b1e
feat(developer,common): use unified xml writer
srl295 Sep 27, 2024
2d21b21
Merge pull request #12427 from keymanapp/refactor/developer/12347-mov…
mcdurdin Sep 28, 2024
da8bad7
Merge pull request #12478 from keymanapp/fix/developer/12476-warn-bef…
mcdurdin Sep 28, 2024
9368739
Merge pull request #12480 from keymanapp/chore/linux/api-check
ermshiperete Sep 28, 2024
8e3b6b4
Update docs/file-formats/kmx-plus-file-format.md
mcdurdin Sep 28, 2024
043201c
Merge pull request #12479 from keymanapp/DavidLRowe-kmx-plus-update
mcdurdin Sep 28, 2024
4c202a1
auto: increment master version to 18.0.120
keyman-server Sep 28, 2024
b1029f1
Merge pull request #12484 from keymanapp/auto/version-master-18.0.120
keyman-server Sep 28, 2024
bc1d3f1
chore(oem/fv): Update FirstVoices keyboard versions
darcywong00 Sep 23, 2024
813f472
fix(oem/fv): Update keyboard names
darcywong00 Sep 24, 2024
c2bbf5b
fix(oem/fv): Match more keyboard names from kmp.json
darcywong00 Sep 26, 2024
39f2d3e
fix(android/engine): Remove extraneous braces
darcywong00 Sep 30, 2024
ad7bf1f
chore(android): Merge remote-tracking branch 'origin/master' into fea…
darcywong00 Sep 30, 2024
bc8c74d
chore(common): Add note on troubleshooting website errors
darcywong00 Sep 30, 2024
a85b701
docs(developer): Fix image links in help
darcywong00 Sep 30, 2024
3056128
chore(common): create flag file without node
ermshiperete Sep 30, 2024
4540a50
docs(common): mention `KEYMAN_USE_NVM` in minimum versions doc
ermshiperete Sep 30, 2024
eba7079
chore(developer): update per style guide
srl295 Sep 30, 2024
c5ded39
docs(web): fix paths to several help pages
ermshiperete Sep 30, 2024
7d61d4b
docs(web): fix structure of test document
ermshiperete Sep 30, 2024
158c4a7
feat(developer): update the unified xml parser per review
srl295 Sep 30, 2024
a332676
chore(oem/fv): Update name
darcywong00 Oct 1, 2024
c3b81c0
Merge pull request #12487 from keymanapp/chore/docs/docker-errors
darcywong00 Oct 2, 2024
22a9999
Merge pull request #12490 from keymanapp/docs/common/nvmemsdk
ermshiperete Oct 2, 2024
6a1a356
Merge pull request #12491 from keymanapp/docs/web/paths
ermshiperete Oct 2, 2024
e9f7bd6
Merge pull request #12492 from keymanapp/chore/web/fixtest
ermshiperete Oct 2, 2024
936a289
auto: increment master version to 18.0.121
keyman-server Oct 2, 2024
c55de47
Merge pull request #12501 from keymanapp/auto/version-master-18.0.121
keyman-server Oct 2, 2024
d49719c
Merge pull request #12488 from keymanapp/fix/developer/doc-links
darcywong00 Oct 3, 2024
5881855
Merge pull request #12486 from keymanapp/fv/mobile-updates
darcywong00 Oct 3, 2024
3e168aa
chore(developer,common): deps: xml2js / fast-xml-parser
srl295 Oct 3, 2024
e483318
Merge pull request #12482 from keymanapp/feat/common/12208-unified-xm…
srl295 Oct 3, 2024
6c0d240
Merge branch 'master' into feat/common/12208-fast-xml-parser3
srl295 Oct 3, 2024
03a24a1
feat(developer): fast-xml-parser: fix for ldml empty attributes
srl295 Oct 3, 2024
358f2d5
auto: increment master version to 18.0.122
keyman-server Oct 3, 2024
60bdd83
Merge pull request #12503 from keymanapp/auto/version-master-18.0.122
keyman-server Oct 3, 2024
36dd9c0
Merge branch 'master' into feat/common/12208-fast-xml-parser3
srl295 Oct 3, 2024
5fb8d11
feat(mac): add call to km_core_keyboard_key_list_dispose
sgschantz Oct 7, 2024
f059361
Merge pull request #12458 from keymanapp/feat/mac/933-alt-option-rules
sgschantz Oct 7, 2024
5c6e7c5
chore(common): fix links in minimum-versions.md
mcdurdin Oct 7, 2024
f083881
Merge pull request #12481 from keymanapp/chore/common/configure
ermshiperete Oct 7, 2024
2befe8e
auto: increment master version to 18.0.123
keyman-server Oct 7, 2024
c2f08bd
Merge pull request #12508 from keymanapp/auto/version-master-18.0.123
keyman-server Oct 7, 2024
9a4c7e5
feat(developer): fast-xml-parser: typo fix in xml-utils.ts
srl295 Oct 7, 2024
a0813b8
Merge pull request #12502 from keymanapp/feat/common/12208-fast-xml-p…
srl295 Oct 7, 2024
e208d56
fix(developer): use RichEdit 4.1 for debugger memos
mcdurdin Oct 8, 2024
cd614a5
chore(ios): renew certificate
sgschantz Oct 8, 2024
044eea1
Merge pull request #12512 from keymanapp/chore/renew-ios-cert
sgschantz Oct 8, 2024
3b9c6ef
refactor(web): move `KeyboardObject` type to `common/web/types`
ermshiperete Oct 8, 2024
9a3a091
auto: increment master version to 18.0.124
keyman-server Oct 8, 2024
f92e78d
Merge pull request #12515 from keymanapp/auto/version-master-18.0.124
keyman-server Oct 8, 2024
599f498
Merge pull request #12507 from keymanapp/chore/docs/min-ver-links
mcdurdin Oct 9, 2024
473fea9
Merge pull request #12464 from keymanapp/fix/developer/12454-use-rich…
mcdurdin Oct 9, 2024
15993ff
fix(android): Apply review suggestions
darcywong00 Oct 9, 2024
9fa0670
Merge pull request #12443 from keymanapp/feat/android/auto-correct-ra…
darcywong00 Oct 9, 2024
3232c2a
chore(common): allow to run `build.sh` scripts in `bashdb` debugger
ermshiperete Oct 9, 2024
2184749
chore(linux): allow to skip API change
ermshiperete Oct 9, 2024
13caa2e
refactor(linux): move API verification functions to separate file
ermshiperete Oct 9, 2024
e5c1f81
fix(linux): fix problem with API checks with merge commits
ermshiperete Oct 9, 2024
e81e2f7
auto: increment master version to 18.0.125
keyman-server Oct 9, 2024
d2b0930
Merge pull request #12521 from keymanapp/auto/version-master-18.0.125
keyman-server Oct 9, 2024
c4cebd1
chore(linux): Improve output of API Verification
ermshiperete Oct 9, 2024
9885a47
refactor(web): address code review comments
ermshiperete Oct 9, 2024
680e84d
Merge pull request #12518 from keymanapp/chore/common/builddebug
ermshiperete Oct 10, 2024
23a8c24
Merge pull request #12522 from keymanapp/chore/linux/apicheck
ermshiperete Oct 10, 2024
4f3a684
refactor(web): address code review comments
ermshiperete Oct 8, 2024
d849b30
refactor(web): reverting unnecessary busy changes
ermshiperete Oct 10, 2024
f315275
Merge pull request #12519 from keymanapp/chore/linux/skip_api_changed
ermshiperete Oct 10, 2024
c7c646f
Merge pull request #12520 from keymanapp/chore/linux/fix_apicheck
ermshiperete Oct 10, 2024
71a1b6c
Merge pull request #12514 from keymanapp/refactor/web/11612_keyboardobj
ermshiperete Oct 10, 2024
d8e9168
auto: increment master version to 18.0.126
keyman-server Oct 10, 2024
4a67c5c
Merge pull request #12529 from keymanapp/auto/version-master-18.0.126
keyman-server Oct 10, 2024
d541351
Merge branch 'epic/linux-mcompile' into chore/merge-master-into-linux…
mcdurdin Oct 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
8 changes: 5 additions & 3 deletions .github/workflows/api-verification.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,8 @@ jobs:

- name: "Verify API for libkeymancore*.so (${{ steps.environment_step.outputs.GIT_BRANCH }}, branch ${{ steps.environment_step.outputs.GIT_BASE_BRANCH }}, by ${{ steps.environment_step.outputs.GIT_USER }})"
run: |
echo "Verify API for libkeymancore*.so (${{ steps.environment_step.outputs.GIT_BRANCH }}, branch ${{ steps.environment_step.outputs.GIT_BASE_BRANCH }}, by ${{ steps.environment_step.outputs.GIT_USER }})" >> $GITHUB_STEP_SUMMARY

BIN_PACKAGE=$(ls "${GITHUB_WORKSPACE}/artifacts/" | grep "${PKG_NAME}[0-9]*_${{ steps.environment_step.outputs.VERSION }}-1${{ steps.environment_step.outputs.PRERELEASE_TAG }}+$(lsb_release -c -s)1_amd64.deb")
cd ${{ github.workspace }}/keyman/linux
./scripts/deb-packaging.sh \
Expand All @@ -93,19 +95,19 @@ jobs:
if: needs.api_verification.result == 'success'
run: |
echo "RESULT=success" >> $GITHUB_ENV
echo "MSG=Package build succeeded" >> $GITHUB_ENV
echo "MSG=API verification succeeded" >> $GITHUB_ENV

- name: Set cancelled
if: needs.api_verification.result == 'cancelled'
run: |
echo "RESULT=error" >> $GITHUB_ENV
echo "MSG=Package build cancelled" >> $GITHUB_ENV
echo "MSG=API verification cancelled" >> $GITHUB_ENV

- name: Set failure
if: needs.api_verification.result == 'failure'
run: |
echo "RESULT=failure" >> $GITHUB_ENV
echo "MSG=Package build failed" >> $GITHUB_ENV
echo "MSG=API verification failed" >> $GITHUB_ENV

- name: Set final status
run: |
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -183,3 +183,6 @@ lcov.info
/keyman*.buildinfo
/keyman*.changes
/keyman*.tar.?z

# flag file for build script
.configured
92 changes: 92 additions & 0 deletions HISTORY.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,97 @@
# Keyman Version History

## 18.0.125 alpha 2024-10-10

* chore(common): allow to run `build.sh` scripts in `bashdb` debugger (#12518)
* chore(linux): Improve output of API Verification (#12522)
* chore(linux): allow to skip API change (#12519)
* fix(linux): fix problem with API checks with merge commits (#12520)
* refactor(web): move `KeyboardObject` type to `common/web/types` (#12514)

## 18.0.124 alpha 2024-10-09

* chore(common): fix links in minimum-versions.md (#12507)
* fix(developer): use richedit in debug memo to support Egyptian cartouches (#12464)
* feat(android): Add controls for auto-correct (#12443)

## 18.0.123 alpha 2024-10-08

* chore(developer,common): deps: replace xml2js with fast-xml-parser (#12502)
* chore(ios): renew certificate (#12512)

## 18.0.122 alpha 2024-10-07

* feat(mac): both option keys generate right alt if no left alt mapping (#12458)
* chore(common): improve configuration detection for hextobin (#12481)

## 18.0.121 alpha 2024-10-03

* docs(developer): Fix image links in help (#12488)
* fix(oem/fv): Update keyboard versions and names for fv_all.kmp 13.1 (#12486)
* feat(common): unified XML parser/writer (#12482)

## 18.0.120 alpha 2024-10-02

* chore(common): Add note on troubleshooting website errors (#12487)
* docs(common): mention `KEYMAN_USE_NVM` in minimum versions doc (#12490)
* docs(web): fix paths to several help pages (#12491)
* docs(web): fix structure of test document (#12492)

## 18.0.119 alpha 2024-09-28

* refactor(developer): copy dev 17.0 help into repo (#12427)
* fix(developer): warn before importing over touch layout (#12478)
* chore(linux): display branch name with API verification (#12480)
* docs(core): Update kmx-plus-file-format.md (#12479)

## 18.0.118 alpha 2024-09-26

* chore(developer): add context/options (#11566)
* chore(deps-dev): bump rollup from 4.16.4 to 4.22.4 (#12462)
* fix(developer): ignore excess whitespace in `<row keys>` attribute (#12468)
* refactor(common): move help into common prod/docs/help folders (#12424)
* fix(developer): publish developer-utils package during build (#12471)
* fix(linux): ignore additional C++ symbol in API check (#12474)

## 18.0.117 alpha 2024-09-25

* docs(common): Document how to skip generating CDN on websites (#12446)
* fix(android): Remove toggle for "Always Show Banner" (#12430)
* fix(android): Hide suggestion banner on password fields (#12442)
* fix(developer): prevent invalid string ids (#12465)

## 18.0.116 alpha 2024-09-20

* change(mac): remove verbose logging option (#12431)
* chore(common): Allow to build offline (#12439)

## 18.0.115 alpha 2024-09-19

* chore(common): detect ssh remotes in git hooks (#12437)
* fix(common): add proper configure output for hextobin (#12440)
* fix(core): add missing dependency for core (#12438)
* chore(developer): remove .js output from LDML compiler (#12432)

## 18.0.114 alpha 2024-09-17

* fix(developer): rewrite ldml visual keyboard compiler (#12402)
* fix(developer): check vars string usage before definition (#12404)
* change(mac): remove 'Always show OSK' option (#12355)

## 18.0.113 alpha 2024-09-16

* test(developer): kmcmplib compiler unit tests 3 (#11990)

## 18.0.112 alpha 2024-09-14

* chore(deps): bump express from 4.19.2 to 4.20.0 (#12396)

## 18.0.111 alpha 2024-09-13

* chore(common): Update crowdin strings for Italian (#12408)
* fix(common): correct offsets in KMX+ spec (#12350)
* fix(android): Add gating to setLongpressDelay() (#12410)

## 18.0.110 alpha 2024-09-12

* chore(common): Update to Unicode 16.0 (#12393)
Expand Down
2 changes: 1 addition & 1 deletion VERSION.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
18.0.111
18.0.126
4 changes: 2 additions & 2 deletions android/KMAPro/build-play-store-notes.inc.sh
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,15 @@ function generateReleaseNotes() {
# Pad release notes if whatsnew.md doesn't have any line items
# Play Store release notes have a limit of 500 characters
local DEFAULT_RELEASE_NOTE="* Additional bug fixes and improvements"
local FILTERED_LINES=$( grep '^\s*\*.*$' "$KEYMAN_ROOT/android/help/about/whatsnew.md" || [[ $? == 1 ]] ) # Continue if grep has no matches
local FILTERED_LINES=$( grep '^\s*\*.*$' "$KEYMAN_ROOT/android/docs/help/about/whatsnew.md" || [[ $? == 1 ]] ) # Continue if grep has no matches
if [ -z "$FILTERED_LINES" ]; then
FILTERED_LINES="$DEFAULT_RELEASE_NOTE"
builder_warn "Warning: whatsnew.md empty so using default release note: '$FILTERED_LINES'"
fi

# Change IFS to new line
local old_IFS="${IFS}"
IFS=$'\n'
IFS=$'\n'
for line in $FILTERED_LINES
do
local CHARS_IN_RELEASE_NOTES=$( wc -m < "$PLAY_RELEASE_NOTES" )
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import com.keyman.engine.KMManager;
import com.keyman.engine.KMManager.KeyboardType;
import com.keyman.engine.KMHardwareKeyboardInterpreter;
import com.keyman.engine.KMManager.SuggestionType;
import com.keyman.engine.KeyboardEventHandler.OnKeyboardEventListener;
import com.keyman.engine.R;
import com.keyman.engine.data.Keyboard;
Expand Down Expand Up @@ -169,8 +170,9 @@ public void onStartInput(EditorInfo attribute, boolean restarting) {
if (kbInfo != null) {
String langId = kbInfo.getLanguageID();
SharedPreferences prefs = appContext.getSharedPreferences(appContext.getString(R.string.kma_prefs_name), Context.MODE_PRIVATE);
boolean mayPredict = prefs.getBoolean(KMManager.getLanguagePredictionPreferenceKey(langId), true);
KMManager.setBannerOptions(mayPredict);
int maySuggest = prefs.getInt(KMManager.getLanguageAutoCorrectionPreferenceKey(langId), KMManager.KMDefault_Suggestion);
// Enable banner if maySuggest is not SuggestionType.SUGGESTIONS_DISABLED (0)
KMManager.setBannerOptions(maySuggest != SuggestionType.SUGGESTIONS_DISABLED.toInt());
} else {
KMManager.setBannerOptions(false);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
public class KeymanSettingsActivity extends BaseActivity {
protected static final String installedLanguagesKey = "InstalledLanguages";
protected static final String installKeyboardOrDictionaryKey = "InstallKeyboardOrDictionary";
protected static final String showBannerKey = "ShowBanner";
protected static final String sendCrashReport = "SendCrashReport";
public static final String spacebarTextKey = "SpacebarText";
public static final String hapticFeedbackKey = "HapticFeedback";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -178,12 +178,6 @@ public boolean onPreferenceChange(Preference preference, Object newValue) {
editor.putBoolean(KeymanSettingsActivity.showBannerKey, isChecked);
as part of the default onClick() used by SwitchPreference.
*/
SwitchPreference bannerPreference = new SwitchPreference(context);
bannerPreference.setKey(KeymanSettingsActivity.showBannerKey);
bannerPreference.setTitle(getString(R.string.show_banner));
bannerPreference.setSummaryOn(getString(R.string.show_banner_on));
bannerPreference.setSummaryOff(getString(R.string.show_banner_off));

SwitchPreference getStartedPreference = new SwitchPreference(context);
getStartedPreference.setKey(GetStartedActivity.showGetStartedKey);
getStartedPreference.setTitle(String.format(getString(R.string.show_get_started), getString(R.string.get_started)));
Expand All @@ -207,7 +201,6 @@ as part of the default onClick() used by SwitchPreference.
screen.addPreference(spacebarTextPreference);

screen.addPreference(hapticFeedbackPreference);
screen.addPreference(bannerPreference);
screen.addPreference(getStartedPreference);
screen.addPreference(sendCrashReportPreference);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,13 @@
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.RelativeLayout;
import android.widget.TextView;

import androidx.annotation.IdRes;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
Expand Down Expand Up @@ -55,50 +59,6 @@ public final class LanguageSettingsActivity extends AppCompatActivity {

private final static String TAG = "LanguageSettingsAct";

private class PreferenceToggleListener implements View.OnClickListener {
String prefsKey;
String lgCode;

public PreferenceToggleListener(String prefsKey, String lgCode) {
this.prefsKey = prefsKey;
this.lgCode = lgCode;
}

@Override
public void onClick(View v) {
// For predictions/corrections toggle
SwitchCompat toggle = (SwitchCompat) v;

SharedPreferences.Editor prefEditor = prefs.edit();

// predictionsToggle overrides correctionToggle and correctionsTextView
if (prefsKey.endsWith(KMManager.predictionPrefSuffix)) {
boolean override = toggle.isChecked();
overrideCorrectionsToggle(override);
}

// This will allow preemptively making settings for languages without models.
// Seems more trouble than it's worth to block this.
prefEditor.putBoolean(prefsKey, toggle.isChecked());
prefEditor.apply();

// Don't use/apply language modeling settings for languages without models.
if (associatedLexicalModel.isEmpty()) {
return;
}

Keyboard kbInfo = KMManager.getCurrentKeyboardInfo(context);
if(kbInfo != null) {
// If the active keyboard is for this language, immediately enact the new pref setting.
String kbdLgCode = kbInfo.getLanguageID();
if (kbdLgCode.equals(lgCode)) {
// Not only registers the model but also applies our modeling preferences.
KMManager.registerAssociatedLexicalModel(lgCode);
}
}
}
}

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Expand Down Expand Up @@ -139,33 +99,48 @@ public void onCreate(Bundle savedInstanceState) {

FilteredKeyboardsAdapter adapter = new FilteredKeyboardsAdapter(context, KeyboardPickerActivity.getInstalledDataset(context), lgCode);

// The following two layouts/toggles will need to link with these objects.
// The following radio group will need to link with these objects.
Context appContext = this.getApplicationContext();
prefs = appContext.getSharedPreferences(appContext.getString(R.string.kma_prefs_name), Context.MODE_PRIVATE);
boolean mayPredict = prefs.getBoolean(KMManager.getLanguagePredictionPreferenceKey(lgCode), true);
boolean mayCorrect = prefs.getBoolean(KMManager.getLanguageCorrectionPreferenceKey(lgCode), true);

RelativeLayout layout = (RelativeLayout)findViewById(R.id.corrections_toggle);
int maySuggest = prefs.getInt(KMManager.getLanguageAutoCorrectionPreferenceKey(lgCode), KMManager.KMDefault_Suggestion);

correctionsTextView = (TextView) layout.findViewById(R.id.text1);
correctionsTextView.setText(getString(R.string.enable_corrections));
correctionsToggle = layout.findViewById(R.id.toggle);
correctionsToggle.setChecked(mayCorrect); // Link to persistent option storage! Also needs handler.
String prefsKey = KMManager.getLanguageCorrectionPreferenceKey(lgCode);
correctionsToggle.setOnClickListener(new PreferenceToggleListener(prefsKey, lgCode));
// Initialize Radio button group change listeners
RadioGroup radioGroup = (RadioGroup) findViewById(R.id.suggestion_radio_group);
radioGroup.clearCheck();

layout = (RelativeLayout)findViewById(R.id.predictions_toggle);
int[] RadioButtonArray = {
R.id.suggestion_radio_0,
R.id.suggestion_radio_1,
R.id.suggestion_radio_2,
R.id.suggestion_radio_3};
RadioButton radioButton = (RadioButton)radioGroup.findViewById(RadioButtonArray[maySuggest]);
radioButton.setChecked(true);

textView = (TextView) layout.findViewById(R.id.text1);
textView.setText(getString(R.string.enable_predictions));
SwitchCompat predictionsToggle = layout.findViewById(R.id.toggle);
predictionsToggle.setChecked(mayPredict); // Link to persistent option storage! Also needs handler.
prefsKey = KMManager.getLanguagePredictionPreferenceKey(lgCode);
predictionsToggle.setOnClickListener(new PreferenceToggleListener(prefsKey, lgCode));
radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, @IdRes int checkId) {
RadioButton checkedButton = (RadioButton)radioGroup.findViewById(checkId);
int index = radioGroup.indexOfChild(checkedButton);
KMManager.setMaySuggest(lgCode, KMManager.SuggestionType.fromInt(index));

// Don't use/apply language modeling settings for languages without models.
if (associatedLexicalModel.isEmpty()) {
return;
}

overrideCorrectionsToggle(mayPredict);
Keyboard kbInfo = KMManager.getCurrentKeyboardInfo(context);
if(kbInfo != null) {
// If the active keyboard is for this language, immediately enact the new pref setting.
String kbdLgCode = kbInfo.getLanguageID();
if (kbdLgCode.equals(lgCode)) {
// Not only registers the model but also applies our modeling preferences.
KMManager.registerAssociatedLexicalModel(lgCode);
}
}
}
});

layout = (RelativeLayout)findViewById(R.id.model_picker);
RelativeLayout layout = (RelativeLayout)findViewById(R.id.model_picker);
textView = (TextView) layout.findViewById(R.id.text1);
textView.setText(getString(R.string.model_label));

Expand Down
6 changes: 3 additions & 3 deletions android/KMAPro/kMAPro/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -147,13 +147,13 @@
<!-- Context: Keyman Settings menu / Haptic feedback -->
<string name="haptic_feedback" comment="haptic feedback on key press">Vibrate when typing</string>

<!-- Context: Keyman Settings menu -->
<!-- Context: Keyman Settings menu. Removed in Keyman 18 -->
<string name="show_banner" comment="text suggestions banner">Always show banner</string>

<!-- Context: Keyman Settings menu -->
<!-- Context: Keyman Settings menu. Removed in Keyman 18 -->
<string name="show_banner_on" comment="Description when toggle is on">To be implemented</string>

<!-- Context: Keyman Settings menu -->
<!-- Context: Keyman Settings menu. Removed in Keyman 18 -->
<string name="show_banner_off" comment="Description when toggle is off">When off, only shown when predictive text is enabled</string>

<!-- Context: Keyman Settings menu -->
Expand Down
18 changes: 15 additions & 3 deletions android/KMEA/app/src/main/assets/android-host.js
Original file line number Diff line number Diff line change
Expand Up @@ -229,11 +229,23 @@ function deregisterModel(modelID) {
keyman.removeModel(modelID);
}

function enableSuggestions(model, mayPredict, mayCorrect) {
function enableSuggestions(model, suggestionType) {
// Set the options first so that KMW's ModelManager can properly handle model enablement states
// the moment we actually register the new model.
keyman.core.languageProcessor.mayPredict = mayPredict;
keyman.core.languageProcessor.mayCorrect = mayCorrect;
// Use console_debug
console_debug('enableSuggestions(model, maySuggest='+suggestionType+')');
const suggestionSettings = [
// mayPredict, mayCorrect, mayAutoCorrect
[false, false, false], // 0 = SuggestionType.SUGGESTIONS_DISABLED
[true, false, false], // 1 = SuggestionType.PREDICTIONS_ONLY
[true, true, false], // 2 = SuggestionType.PREDICTIONS_WITH_CORRECTIONS
[true, true, true], // 3 = SuggestionType.PREDICTIONS_WITH_AUTO_CORRECT
];
const t = suggestionSettings[suggestionType]
? suggestionSettings[suggestionType] : suggestionSettings[0];
keyman.core.languageProcessor.mayPredict = t[0];
keyman.core.languageProcessor.maySuggest = t[1];
// keyman.core.languageProcessor.mayAutoCorrect = t[2];

registerModel(model);
}
Expand Down
Loading
Loading