Commit graph

32786 commits

Author SHA1 Message Date
Marc Durdin
d247900504
Merge pull request #15316 from keymanapp/maint/resources/trigger-builds-rollback-builder_launch
maint(resources): roll back builder_launch for trigger-release-builds.sh
2025-12-08 07:38:24 +01:00
Marc Durdin
38c2d031bb maint(resources): roll back builder_launch for trigger-release-builds.sh
The trigger-release-builds.sh script is not a full builder script, and
does not setup all the necessary environment for using `builder_launch`.
This causes a script error:

```
[resources/teamcity/triggers] ## script '/resources/build/version/build.sh ' launched...
/c/BuildAgent/work/99b311828f4ee7c/keyman/resources/builder.inc.sh: line 517: _builder_build_deps: unbound variable
```

So, rolling this back to a direct call to the script, at least until we
update trigger-release-builds to be a full builder script.

Test-bot: skip
Build-bot: skip
2025-12-08 07:30:49 +01:00
Marc Durdin
acc86f5bce
Merge pull request #15280 from keymanapp/change/windows/add-shortcuts-to-install-dialog
change(windows): add shortcuts to 'Update Available' dialog
2025-12-05 07:11:05 +01:00
Marc Durdin
f813442c40
Merge pull request #15276 from keymanapp/revert-14799-change/windows/include-map2pdb-for-relevant-projects
change(windows): Revert "change(windows): include map2pdb generation for relevant Delphi projects"
2025-12-05 07:10:52 +01:00
Marc Durdin
76baf1a6d6
Merge pull request #15258 from keymanapp/maint/common/15130-use-builder_launch-for-child-builds
maint(common): use `builder_launch` for child builds
2025-12-05 07:10:44 +01:00
Marc Durdin
c3a8fdec13
Merge pull request #15257 from keymanapp/maint/resources/verify-order-of-builder_int_deps
maint(resources): verify order of builder_describe_internal_dependency
2025-12-05 07:10:37 +01:00
Marc Durdin
6c07c48235 change(windows): add shortcuts to 'Update Available' dialog
`&X` means you can press Alt+X.

Test-bot: skip
Build-bot: skip
2025-12-04 04:32:18 +01:00
Keyman Server
88f3f26b62
Merge pull request #15277 from keymanapp/auto/version-master-19.0.171
auto: increment master version to 19.0.171
2025-12-03 19:04:01 +01:00
Keyman Build Agent
dccea53761 auto: increment master version to 19.0.171
Test-bot: skip
Build-bot: skip
2025-12-03 12:02:03 -06:00
Marc Durdin
cb8150c896
Merge pull request #15275 from keymanapp/docs/developer/api-refresh
docs(developer): add/update API docs
2025-12-03 15:02:41 +01:00
Marc Durdin
09710a190c
Merge pull request #15186 from keymanapp/dependabot/npm_and_yarn/developer/src/server/src/win32/trayicon/addon-src/glob-10.5.0
chore(deps): bump glob from 10.4.5 to 10.5.0 in /developer/src/server/src/win32/trayicon/addon-src
2025-12-03 15:02:36 +01:00
Marc Durdin
e9ac9c25a3
chore(windows): don't revert minor unrelated parts of map2pdb cleanup 2025-12-03 14:25:29 +01:00
Marc Durdin
6c99f33bcc
Revert "change(windows): include map2pdb generation for relevant Delphi projects" 2025-12-03 14:13:54 +01:00
dependabot[bot]
e4606e4925
chore(deps): bump glob
Bumps [glob](https://github.com/isaacs/node-glob) from 10.4.5 to 10.5.0.
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/node-glob/compare/v10.4.5...v10.5.0)

---
updated-dependencies:
- dependency-name: glob
  dependency-version: 10.5.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-03 12:55:03 +00:00
Marc Durdin
10ce06790a
Merge pull request #15185 from keymanapp/dependabot/npm_and_yarn/multi-3bf2940f2d
chore(deps): bump js-yaml and @microsoft/api-documenter
2025-12-03 13:54:01 +01:00
Marc Durdin
9de8371cfe docs(developer): add/update API docs
Test-bot: skip
Build-bot: skip
2025-12-03 13:51:30 +01:00
Marc Durdin
0d8999574a
Merge pull request #15184 from keymanapp/dependabot/npm_and_yarn/resources/build/pr-build-status/glob-10.5.0
chore(deps-dev): bump glob from 10.4.5 to 10.5.0 in /resources/build/pr-build-status
2025-12-03 13:45:25 +01:00
Marc Durdin
024432377a
Merge pull request #15173 from keymanapp/dependabot/npm_and_yarn/resources/build/pr-build-status/js-yaml-4.1.1
chore(deps-dev): bump js-yaml from 4.1.0 to 4.1.1 in /resources/build/pr-build-status
2025-12-03 13:42:16 +01:00
Keyman Server
65dabe45df
Merge pull request #15272 from keymanapp/auto/cherry-pick-18.0.245-history-to-alpha
auto: cherry-pick 18.0.245 history to alpha
2025-12-03 08:34:11 +01:00
Keyman Build Agent
a967c9f072 auto: cherry-pick 18.0.245 history to alpha
Build-bot: skip
Test-bot: skip
2025-12-03 01:33:04 -06:00
Keyman Server
5cc3c6151d
Merge pull request #15266 from keymanapp/auto/version-master-19.0.170
auto: increment master version to 19.0.170
2025-12-02 19:04:06 +01:00
Keyman Build Agent
31c4013576 auto: increment master version to 19.0.170
Test-bot: skip
Build-bot: skip
2025-12-02 12:01:33 -06:00
Darcy Wong
638c474579
Merge pull request #15261 from keymanapp/chore/fv-all-versions
chore(common): Update FirstVoices keyboard versions in keyboards.csv
2025-12-02 19:21:38 +07:00
Marc Durdin
a09c3064bb maint(common): pass 'test' flag in to builder_launch test.sh
Long-term builder_launch may need to handle the default action in child
builds, but this is really an outlier and for now, fixing here.

This resolves a situation where the unit tests were not running for web
after the builder_launch update.

Fixes: #15130
Build-bot: skip build:web
2025-12-02 10:29:09 +01:00
Marc Durdin
c524db41b9 maint(common): use builder_launch for child builds
Fixes: #15130
Test-bot: skip
2025-12-02 06:17:31 +01:00
Marc Durdin
be5715f135
Merge pull request #15256 from keymanapp/maint/core/15254-verify-changes-to-ldml-consts
maint(core): verify that keyman_core_ldml.h is in sync
2025-12-02 05:28:13 +01:00
Darcy Wong
8059363256 chore(common): Update FirstVoices keyboard versions in keyboards.csv 2025-12-02 10:54:17 +07:00
Keyman Server
1db912b150
Merge pull request #15259 from keymanapp/auto/version-master-19.0.169
auto: increment master version to 19.0.169
2025-12-01 19:04:12 +01:00
Keyman Build Agent
2d2782bd6c auto: increment master version to 19.0.169
Test-bot: skip
Build-bot: skip
2025-12-01 12:02:08 -06:00
Marc Durdin
9335a82530 maint(core): verify that keyman_core_ldml.h is in sync
Fixes: #15254
Test-bot: skip
Build-bot: skip build:linux,mac,windows
2025-12-01 17:11:57 +01:00
Marc Durdin
94ac669ec1 maint(resources): verify order of builder_describe_internal_dependency
Test-bot: skip
2025-12-01 16:47:50 +01:00
Marc Durdin
307f600f43
Merge pull request #13663 from MattGyverLee/feat/android/keyboard-min-max
fix(android): address keyboard height vs touch height race after keyboard height preference change (also min max heights + docs)
2025-12-01 14:22:25 +01:00
Marc Durdin
cbccf2567f
Merge pull request #15243 from keymanapp/fix/developer/15242-handle-errors-in-touch-layout-on-load
fix(developer): handle errors in .keyman-touch-layout file when loading
2025-12-01 14:21:43 +01:00
Darcy Wong
fd9d7f31f9
Merge pull request #15253 from keymanapp/docs/ios/cdn-dev
docs(ios): Use /cdn/dev assets for Engine guides
2025-12-01 15:50:39 +07:00
Darcy Wong
c909c020f9
Merge pull request #15247 from keymanapp/docs/android/broadcast-font-name
docs(android): Document Keyman API for keyboard font change
2025-12-01 15:43:28 +07:00
Marc Durdin
29be0176bb
Merge pull request #15193 from Nnyny/chore/android/sendCurrentFontName
chore(android): add intent to broadcast font name
2025-12-01 09:21:12 +01:00
Darcy Wong
d89e90a404
Merge branch 'master' into chore/android/sendCurrentFontName 2025-12-01 08:46:29 +07:00
Darcy Wong
ed333749de docs(ios): Use /cdn/dev assets for Engine guides 2025-12-01 08:06:01 +07:00
Keyman Server
5322d6fcf7
Merge pull request #15252 from keymanapp/auto/version-master-19.0.168
auto: increment master version to 19.0.168
2025-11-28 19:08:48 +01:00
Keyman Build Agent
bbafac8545 auto: increment master version to 19.0.168
Test-bot: skip
Build-bot: skip
2025-11-28 12:06:12 -06:00
Marc Durdin
00d0ef5e28
Merge pull request #15246 from keymanapp/chore/windows/add-wow64kbd-explorer
chore(windows): add wow64kbd support app for researching WOW64 reqs
2025-11-28 10:48:59 +01:00
Marc Durdin
1a0156bff8
Merge pull request #15245 from keymanapp/refactor/windows/syskbd
refactor(windows): merge syskbdnt.cpp and syskbdnt64.cpp into RightAltEmulationCheck.cpp
2025-11-28 10:48:49 +01:00
Marc Durdin
0949484a18
Merge pull request #15244 from keymanapp/change/windows/add-unit-tests-to-keyman32-build
change(windows): add unit testing to keyman32 build
2025-11-28 10:48:38 +01:00
Marc Durdin
ff984c8144
chore: Update windows/src/engine/keyman32/RightAltEmulationCheck.cpp
Build-bot: skip

Co-authored-by: rc-swag <58423624+rc-swag@users.noreply.github.com>
2025-11-28 10:26:07 +01:00
Darcy Wong
fd7c1b3683 docs(android): Document Keyman API for keyboard font change 2025-11-28 10:55:54 +07:00
Marc Durdin
ec8908ecc7 chore(windows): add wow64kbd support app for researching WOW64 reqs
This app reports on WOW64 identification function results, and reports
on kbdxx.dll file alignment by printing a hex dump of the first 44 bytes
(which is the 32 bit size of the structure). Manual review of the hex
dump should be possible to determine if we have the expected alignment,
which should be 32 bit on a 32 bit Windows installation, but 64 bit on
any 64 bit other Windows installations, even with a 32 bit process.

wow64kbd is not included in the normal build. Build when needed; you can
copy entire folder to a target computer and run `run.bat` to get a full
report.

`./build.sh test` will also run the same test on the local machine.

Test-bot: skip
Build-bot: skip
2025-11-27 11:06:01 +01:00
Marc Durdin
404a9ea244 refactor(windows): merge syskbdnt.cpp and syskbdnt64.cpp into RightAltEmulationCheck.cpp
Remove a number of unused bits and pieces, and merge the one remaining
function in syskbdnt.cpp, `KeyboardGivesCtrlRAltForRAlt` with the
corresponding function in syskbdnt64.cpp.

Add a unit test for `ReadAltGrFlagFromKbdDll` to ensure that it is
working correctly across various architectures.

Test-bot: skip
2025-11-27 09:37:59 +01:00
Marc Durdin
ca77e41d74 change(windows): add unit testing to keyman32 build
Rename keyman-engine-tests.vcxproj to keyman32.tests.vcxproj, move up a
folder, rename other files to match test filename conventions, update
vcxproj for vs2022, and build and run this from build.sh:test.

Also remove keyman-engine.vcxproj, instead integrating the static lib
version of keyman32 into keyman32.vcxproj. One day in the future, we
could split back the other way, and have the DLL be essentially a link
action from the .lib, but that's higher complexity to setup.

Add a configuration step to install NuGet packages for Google Test
specifically for keyman32.tests.vcxproj. If we add Google Test to other
msbuild projects, we could move the packages/ up to top level of the
repo in the future (similar to node_modules) to reduce number of
configuration downloads.

Build-bot: skip build:windows,developer
Test-bot: skip
2025-11-27 09:11:39 +01:00
Marc Durdin
3eaaacd706 fix(developer): handle errors in .keyman-touch-layout file when loading
If the .keyman-touch-layout file has validation errors, Keyman Developer
will now report the first validation error in the message window, rather
than silently closing the whole keyboard editor. The
.keyman-touch-layout file will be loaded in Code view, and once the
first validation error is addressed, switching to Design view will
report the next error.

For future improvement:
* reporting multiple validation errors
* reporting line number of error

Fixes: #15242
Test-bot: skip
2025-11-27 05:50:36 +01:00
Keyman Server
a45d6db423
Merge pull request #15241 from keymanapp/auto/version-master-19.0.167
auto: increment master version to 19.0.167
2025-11-26 19:02:39 +01:00