Commit graph

5567 commits

Author SHA1 Message Date
Marc Durdin
9ad48b66a4
Merge pull request #16726 from keymanapp/chore/common/remove-unused-clearcontext-fix-switch-key-codes
chore(common): remove `clearcontext`,`fix`,`switch`,`key` statements
2026-10-06 10:48:53 +02:00
Marc Durdin
3743fd989b
Merge pull request #16724 from keymanapp/maint/common/code__size
chore(common): move CODE__SIZE declaration to common
2026-10-06 10:48:29 +02:00
Marc Durdin
669ca4b6fd chore(common): remove clearcontext,fix,switch,key statements
Remove compiler support for `clearcontext`, `fix`, `switch` statements
and remove corresponding `CODE_` definitions, as well as `CODE_KEY`,
which was never used.

These four statements have never been documented and have either never
been implemented, or long been unsupported. An earlier change (#16445)
marked `clearcontext` and `fix` as deprecated for v19 onwards, but
deprecation for an undocumented language feature is an unnecessary step,
so have opted to remove altogether in v19 to reduce complexity. This
means that `VERSION_190` is used now only for compile target
deprecations.

Follows: #16445
Test-bot: skip
2026-10-05 08:09:12 +02:00
Marc Durdin
620d736c0e chore(common): move CODE__SIZE declaration to common
Remove duplicate CODE__SIZE C++ declarations.

Test-bot: skip
2026-10-03 12:17:39 +02:00
rc-swag
5be17e4366
Merge pull request #16603 from keymanapp/fix/windows/15785/windows-startup-apps-sync
fix(windows): add warning when system startup disabled
2026-10-02 15:03:29 +10:00
Marc Durdin
6124372d6a fix(developer): handle out-of-range return values from GetExitCodeProcess
Handle exit code values >= 2^31 from `GetExitCodeProcess` in
`TUtilExecute.console`, for example COM errors, which are DWORD values
with high bit set.

Fixes: #16701
Fixes: KEYMAN-DEVELOPER-3SB
Test-bot: skip
2026-09-29 15:18:28 +02:00
rc-swag
8d5608ee13
fix(windows): apply review suggestions
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-09-29 10:55:23 +10:00
rc-swag
121894fee4 chore(windows): Merge branch 'master' into fix/windows/15785/windows-startup-apps-sync
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-09-28 11:35:27 +10:00
Eberhard Beilharz
05be47793c
chore(common): fix TC reporter reporting failures
The TC reporter failed reporting failures (see e.g.
https://build.palaso.org/buildConfiguration/Keymanweb_TestPullRequests/646398?logView=flowAware&showLog=646398_11692__expandAll)
Turns out we double escaped some strings, and there were a spurious bracket
and single quote in the service message.

Build-bot: skip build:web
Test-bot: skip
2026-09-23 21:43:07 +02:00
rc-swag
f8ee1b7c8a
Merge pull request #16162 from keymanapp/fix/windows/15152/basekeyboard-user-not-admin
fix(windows): set basekeyboard as current user not the admin user on an elevated process
2026-09-23 09:52:25 +10:00
rc-swag
bb20b89034 fix(windows): rename filename builder functions
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-09-18 21:16:54 +10:00
rc-swag
587d74dee4
fix(windows): apply batched suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-09-18 20:48:56 +10:00
rc-swag
12f4bcee0a fix(windows): add warning when system startup disabled
This is the initial commit to add a check to see if the Windows
System setting for Keyman startup is disabled when the users
as select Keyman to start with Windows.

Fixes: #15785
2026-09-18 18:07:18 +10:00
rc-swag
eec0b12c44 fix(windows): rename argument that was misleading
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-09-17 10:38:33 +10:00
rc-swag
b6f475a382 fix(windows): add basekeyboard filename functions
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-09-16 17:37:59 +10:00
Marc Durdin
b2e72e94b9
Merge pull request #16445 from keymanapp/change/developer/14211-deprecate-fix-clearcontext
change(developer): deprecate `fix`, `clearcontext`, bump max .kmx version to 19.0
2026-09-01 22:32:31 +07:00
Marc Durdin
d496f8d59b
Merge pull request #16443 from keymanapp/maint/windows/16433-remove-koSwitchLanguageForAllApplications-and-cleanup
maint(windows): remove `koSwitchLanguageForAllApplications`, `koAutoSwitchOSKPages`, osVista, osWin7, osWin8, cleanup
2026-09-01 16:11:29 +07:00
Marc Durdin
1e8cd24960
Merge pull request #16446 from keymanapp/fix/developer/13721-u16tok-targets-store-leading-whitespace
fix(developer): handle leading delimiters correctly in `u16tok()`
2026-09-01 12:27:16 +07:00
Marc Durdin
d7b4084438 fix(developer): improve scroll wheel behavior in Character Map
The Character Map scroll will now scroll from current scroll position
when the scroll wheel is used, one row at a time, rather than moving the
currently selected cell. This behavior is more natural and allows mixed
use of the scrollbar and the scrollwheel.

Fixes: #14159
Test-bot: skip
2026-08-31 07:55:16 +02:00
Marc Durdin
babb473682 fix(developer): handle leading whitespace correctly in u16tok()
A string with leading delimiters passed into `u16tok()` would not skip
those delimiters. This impacted `&targets` store and other locations.

Note that this tightens input parameter checks for delimiters and
context as well.

Fixes: #13721
Test-bot: skip
2026-08-27 11:15:14 +02:00
Marc Durdin
14b2a9a168 change(developer): deprecate fix, clearcontext, bump max .kmx version to 19.0
Fixes: #14211
Test-bot: skip
2026-08-27 09:24:50 +02:00
Marc Durdin
0f281a6a9d maint(windows): remove koSwitchLanguageForAllApplications, koAutoSwitchOSKPages, osVista, osWin7, osWin8, cleanup
* Remove references to `koSwitchLanguageForAllApplications` and
  `koAutoSwitchOSKPages` options, translated strings for them, and
  related `GlobalKeyboardChangeManager` -- no longer required since
  Win8.
* Remove Windows Vista-, 7-, and 8-specific code paths - except for the
  one user-facing setting for installing keyboards on downlevel
  operating systems.
* Remove commented code

Fixes: #16433
Test-bot: skip
2026-08-27 07:47:25 +02:00
Marc Durdin
adaf2337c5
Merge pull request #12191 from keymanapp/epic/kmc-convert
epic: kmc-convert 😎
2026-08-20 16:14:11 +07:00
SabineSIL
882ede0c54
feat(developer): kmc-convert: new conversion .keylayout->kmn 😎 (#12564)
kmc-convert provides tooling to convert between various common keyboard
description file formats. Each conversion will be implemented in its
single, separate module (and each module will done in its own PR)

This PR will address the conversion **keylayout → kmn**

Co-authored-by: Marc Durdin <marc@durdin.net>
2026-08-18 15:16:02 +02:00
Keyman Server
90c10d5f34
Merge branch 'epic/autocorrect' into auto/A19S35-merge-base-into-autocorrect 2026-08-14 16:18:38 +02:00
Joshua Horton
bc497a5fcf fix(web): adjust sourcemap linking pattern used for error reporting within mobile apps
Fixes: #16367

Build-bot: skip build:web release:android release:ios
Test-bot: skip
2026-08-13 14:56:33 -05:00
Sabine
a621106ef3 chore(common): remove namespace km::vkey 2026-08-12 10:04:20 +02:00
Sabine
4e4e37ec26 chore(common): add VK_DELETE to km_vkey.h 2026-08-11 11:13:51 +02:00
Sabine
a2bf976e5e chore(common): remove commented old #defines; in some files remove paths for #include km_vkey 2026-08-11 09:46:49 +02:00
SabineSIL
540f8c5db8
Merge branch 'master' into chore/developer/scatteredCode/cleanup_VKeys 2026-08-07 12:01:43 +02:00
Keyman Server
c2a3fd8d7d
Merge branch 'epic/autocorrect' into auto/A19S33-merge-master-into-autocorrect 2026-07-20 07:26:08 +02:00
Marc Durdin
cb8f9584cf fix(android): improve clarity of keyboard script error popup
* Remove irrelevant context from toast and add more context for Sentry
  report.
* Add a test keyboard with a script error that will trigger the toast on
  first keystroke.
* Rearrange common/test/keyboards/invalid to make a good place for
  compiled invalid keyboards.

Fixes: #16145
Test-bot: skip
2026-07-13 11:21:42 +02:00
Marc Durdin
528876b42f
Merge pull request #16135 from keymanapp/chore/developer/14838-consolidate-api-extractor
chore(developer): consolidate api-extractor usage in Developer
2026-07-09 18:50:27 +10:00
Joshua Horton
56678bee6b Merge branch 'epic/autocorrect' into change/web/transition-id-nomenclature
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-07-06 08:43:45 -05:00
Keyman Server
2dfa960f13
Merge branch 'epic/autocorrect' into auto/A19S32-merge-base-into-autocorrect 2026-07-04 13:19:27 +02:00
Sabine
953f687c2a chore(common): comment for VK_DECIMAL, remove VK__MAX; use windows.h for VK_ESCAPE and VK_BACK 2026-07-02 15:40:24 +02:00
Sabine
b780ecc730 chore(common): edit value of VK_DECIMAL 2026-07-02 12:07:46 +02:00
Sabine
68fa9b97fb chore(common): rename namespace km_vk to vkey and use under km (km::vkey) 2026-07-02 11:37:46 +02:00
Sabine
62d7f79925 chore(common): rename and use keyman_vkey.h-> km_vkey.h 2026-07-02 11:19:46 +02:00
Sabine
5ab4b10375 chore(common): dummy change 2026-07-02 09:46:48 +02:00
SabineSIL
9ca40faac7
Merge branch 'master' into chore/developer/scatteredCode/cleanup_VKeys
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-07-02 09:37:43 +02:00
Marc Durdin
cda7dc6d24 chore: remove deprecated "X-UA-Compatible" and "apple-mobile-web-app-capable" metas
For Keyman Developer Server, add app.webmanifest so that it can be saved
to the home screen; other pages should not require this.

Fixes: #16172
Test-bot: skip
2026-07-01 10:27:22 +02:00
Marc Durdin
b535203e36 chore(developer): fix docs, api_extractor params in build.sh's
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
Test-bot: skip
Build-bot: skip release:developer
2026-06-29 16:34:39 +02:00
Joshua Horton
b14fe90894 change(web): polish documentation + uses of transition ID in predictive text
- Drops the `Suggestion.transformId` field in favor of just reusing `.transform.id`
- Updates documentation on .transform.id as a unique identifier of the transition,
not specific to a single Transform.

Does not modify the `.transform` or `.id` properties because we've been publishing
lexical model types, and that would change the public model API.

Build-bot: skip build:web
Test-bot: skip
2026-06-26 12:48:16 -05:00
Marc Durdin
debe12f5d5 chore: Merge branch 'epic/autocorrect' into auto/A19S31-merge-master-into-autocorrect 2026-06-24 16:13:50 +02:00
Marc Durdin
d86604902e chore(developer): consolidate api-extractor usage in Developer
* Centralize the api-extractor.json files, update usage
* Support @since
* Tidy up a few warnings relating to API documentation content

Fixes: #14838
Test-bot: skip
2026-06-24 14:45:05 +02:00
Marc Durdin
647a9ebc98 fix(developer): prevent clone of legacy keyboards with no source
If a Keyman Cloud keyboard is legacy and has no source available, make
this more obvious to the author when they attempt to clone it. Add also
messages to help the author complete the other required steps to clone
a keyboard.

Fixes: #15606
Test-bot: skip
2026-06-22 17:17:18 +02:00
Joshua Horton
4632f9809e Merge branch 'epic/autocorrect' into auto/A19S30-merge-master-into-autocorrect 2026-06-09 14:50:36 -05:00
Eberhard Beilharz
c1113ac21d
chore(web): address code review comments
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
Also change a few places that I missed.
2026-06-08 19:27:12 +02:00
Marc Durdin
bb66bf42f0
Merge branch 'chore/web-core-preflight' into chore/web-core-strip-core 2026-06-02 00:48:52 +10:00