Commit graph

35130 commits

Author SHA1 Message Date
Joshua Horton
29edaa48a4 change(web): address a couple more
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-08-12 12:53:50 -05:00
Joshua Horton
fcc7c74c8f change(web): alter variable + param names per PR review 2026-08-12 12:52:10 -05:00
Joshua Horton
25f6e6694e Merge branch 'epic/autocorrect' into change/web/match-fatfingers-by-element-ids 2026-08-12 12:38:39 -05:00
Joshua Horton
25744dc226
Merge pull request #16350 from keymanapp/fix/web/complex-backspaces
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
fix(web): fix complex backspace handling, add unit tests 🚂
2026-08-13 00:37:34 +07:00
Joshua Horton
64a67078e7
Merge pull request #16349 from keymanapp/fix/web/context-token-reconstruction-transition-ids
fix(web): annotate transition ID on reconstructed context tokens 🚂
2026-08-13 00:37:12 +07:00
Joshua Horton
4c120b9137 change(web): clean up id-tagging transform-map for-each 2026-08-12 10:57:04 -05:00
Joshua Horton
7330e2aaab
Merge pull request #16313 from keymanapp/fix/web/amharic-keyspec-mismatch
fix(web): match fat-finger keys via elementID, not by reference 🚂
2026-08-12 22:52:55 +07:00
Joshua Horton
2a3fb9796b
Merge pull request #16336 from keymanapp/docs/web/comment-tailless-keystroke-loop
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
docs(web): document loop within tailless-keystroke construction 🚂
2026-08-12 05:30:49 +07:00
Joshua Horton
ce0df801e7 fix(web): fix complex backspace handling, add unit tests
Fixes: #16335

The new unit tests here caught the behavior addressed by this PR's predecessor, #16349.

Meanwhile, a _different_ behavior was noted here that had added complexity - it so happens the test case I constructed managed to catch a bug in backspace handling!  Fortunately, a small tweak was able to resolve the issue.

Build-bot: skip build:web
Test-bot: skip
2026-08-11 17:26:57 -05:00
Joshua Horton
b4c9b40916 fix(web): annotate transition ID on reconstructed context tokens
Build-bot: skip build:web
Test-bot: skip
2026-08-11 17:17:38 -05:00
Keyman Server
6f265f81c3
Merge pull request #16321 from keymanapp/auto/A19S34-merge-base-into-autocorrect
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
auto: A19S34 merge master into autocorrect 🚂
2026-08-11 07:13:36 +02:00
Joshua Horton
9a8d17c090 docs(web): document loop within tailless-keystroke construction
Build-bot: skip build:web
Test-bot: skip
2026-08-10 11:16:20 -05:00
Joshua Horton
79c343b74b
change(web): add issue number to code comment
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-08-10 22:32:08 +07:00
Keyman Server
0a868ac7ff
Merge branch 'epic/autocorrect' into auto/A19S34-merge-base-into-autocorrect 2026-08-10 09:54:03 +02:00
Marc Durdin
7d30136193
Merge pull request #16295 from keymanapp/dependabot/npm_and_yarn/developer/src/server/src/win32/trayicon/addon-src/brace-expansion-5.0.9
chore(deps): bump brace-expansion from 5.0.6 to 5.0.9 in /developer/src/server/src/win32/trayicon/addon-src
2026-08-10 08:48:00 +02:00
Marc Durdin
140dbc27af
Merge pull request #16282 from keymanapp/dependabot/npm_and_yarn/developer/src/server/src/win32/trayicon/addon-src/tar-7.5.22
chore(deps): bump tar from 7.5.11 to 7.5.22 in /developer/src/server/src/win32/trayicon/addon-src
2026-08-10 08:09:01 +02:00
Keyman Server
454fb8f33d
Merge pull request #16303 from keymanapp/auto/version-master-19.0.263
auto: increment master version to 19.0.263
2026-08-10 06:20:22 +02:00
Marc Durdin
73ea766942
Merge branch 'master' into auto/version-master-19.0.263 2026-08-10 06:19:39 +02:00
Joshua Horton
dd0bf09cfd change(web): lookup key-data via elementID, not reference, during fat-finger generation
Build-bot: skip release:web release:android

Relates-to:  #16254
Relates-to:  #16313

Noting that similar issues to those fixed by #16313 have occurred in other gesture-related contexts, it seems wise to implement the same sort of fix for all gesture types - perhaps the Android WebView has its own circumstances where similar "reference replacements" may occur and throw off our internal key-matching logic.
2026-08-07 15:27:32 -05:00
Joshua Horton
d55a1949c8 fix(web): match fat-finger keys via elementID, not by reference
Fixes: #16254

While I have not been able to find a definitive online reference, it appears that the key-spec instance attached to OSK elements may be replaced within the iOS Safari-based WebView despite no re-assignment existing within Keyman Engine for Web code.

The references should not change under any condition, but it appears that something external within the iOS WebView causes this anyway.  Fortunately, we can still check against the unique element ID, which provides a way around this issue.

Build-bot: skip release:web release:ios
2026-08-07 15:23:49 -05:00
Eberhard Beilharz
7a461cf7d5
Merge pull request #16312 from keymanapp/refactor/web/currentKeyboardSrcTextStore
refactor(web): fix return type of `currentKeyboardSrcTextStore`

`currentKeyboardSrcTextStore` can return `null` if the global `textStore` should be used. This change reflects this in the return type.
2026-08-07 21:29:51 +02:00
Eberhard Beilharz
b4d2f50327
Merge pull request #16308 from keymanapp/docs/android/getAssociatedLexicalModel
docs(android): update documentation for `getAssociatedLexicalModel`
2026-08-07 21:28:38 +02:00
Eberhard Beilharz
870903dccb
refactor(web): fix return type of currentKeyboardSrcTextStore
`currentKeyboardSrcTextStore` can return `null` if the global
`textStore` should be used. This change reflects this in the return
type.

Build-bot: skip build:web
Test-bot: skip
2026-08-07 09:37:14 +02:00
Joshua Horton
d201171b29
Merge pull request #16307 from keymanapp/fix/web/suggestions-after-whitespace-leftdelete
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
fix(web): fix construction for suggestions emitted after left-deleting whitespace 🚂
2026-08-07 04:53:35 +07:00
Joshua Horton
1e2a7513a2 chore(web): retrigger ci 2026-08-06 14:05:09 -05:00
Joshua Horton
6c2d873d09 change(web): relocate comment per PR review 2026-08-06 13:39:46 -05:00
Eberhard Beilharz
c41544e8ed
Merge pull request #16266 from keymanapp/fix/android/16226_update
fix(android): show updates for lexical models

With this change the model info activity will show an available update to the lexical model.

PR partially drafted by AI (Gemini 3 Flash Preview).

Fixes: #16226
2026-08-06 16:15:23 +02:00
Eberhard Beilharz
895193bc5d
docs(android): update documentation for getAssociatedLexicalModel
Build-bot: skip
Test-bot: skip
2026-08-05 18:24:11 +02:00
Eberhard Beilharz
6e83adbcf8
docs(android): update and improve comments
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-08-05 18:23:16 +02:00
Eberhard Beilharz
0368a7bc56
test(android): add unit tests for getAssociatedLexicalModel 2026-08-05 18:23:15 +02:00
Eberhard Beilharz
e3ed30a309
chore(android): revert unnecessary parts of previous commit 2026-08-05 18:04:48 +02:00
Joshua Horton
2d59915030 fix(web): fix construction for suggestions emitted after left-deleting whitespace
Build-bot: skip release:web release:android
2026-08-05 10:52:36 -05:00
Keyman Build Agent
354c94e395 auto: increment master version to 19.0.263
Test-bot: skip
Build-bot: skip
2026-08-04 13:01:40 -05:00
Joshua Horton
433f4ea90f
Merge pull request #16298 from keymanapp/feat/web/add-pred-text-unit-tests
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
feat(web): add new pred-text unit test cases 🚂
2026-08-04 20:33:16 +07:00
Joshua Horton
c6b55c5fcc
Merge pull request #16290 from keymanapp/fix/web/bksp-reconstruction
fix(web): restore backspace-input token reconstruction 🚂
2026-08-04 20:07:36 +07:00
Eberhard Beilharz
ae493ad368
Merge pull request #16297 from keymanapp/chore/web/16292_keyboardloadedEvent
chore(web): fire `keyboardloaded` event only once per keyboard

Previously we fired `keyboardloaded` twice for each loaded keyboard. This change fixes this.

Fixes: #16292
2026-08-04 11:54:52 +02:00
Joshua Horton
1b8e82cee5 change(web): fix import path
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-08-03 14:16:36 -05:00
Joshua Horton
04a75adef6 feat(web): add new pred-text unit test cases
Adds unit tests to cover context-reset patterns
and to ensure that transition IDs are always set
properly on generated suggestions, for all model
types.

Build-bot: skip build:web
Test-bot: skip
2026-08-03 12:54:57 -05:00
Eberhard Beilharz
1eb58c4ef8
chore(web): fire keyboardloaded event only once per keyboard
Previously we fired `keyboardloaded` twice for each loaded keyboard.
This change fixes this.

Fixes: #16292
Build-bot: skip build:web
Test-bot: skip
2026-08-03 17:50:11 +02:00
dependabot[bot]
eeaf8de59d
chore(deps): bump brace-expansion
Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 5.0.6 to 5.0.9.
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](https://github.com/juliangruber/brace-expansion/compare/v5.0.6...v5.0.9)

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 5.0.9
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-01 02:09:02 +00:00
Keyman Server
3f01c45aa6
Merge pull request #16293 from keymanapp/auto/version-master-19.0.262
auto: increment master version to 19.0.262
2026-07-30 20:03:54 +02:00
Keyman Build Agent
92372ceab8 auto: increment master version to 19.0.262
Test-bot: skip
Build-bot: skip
2026-07-30 13:02:08 -05:00
Joshua Horton
67b26cb643
Merge pull request #16273 from keymanapp/fix/web/empty-prediction-cases
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
fix(web): improve prediction whitespace-input, backspace-input edge case handling 🚂
2026-07-30 23:24:12 +07:00
Joshua Horton
e1f143a619 fix(web): fix unit test issues from last commit
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-07-30 11:23:48 -05:00
Eberhard Beilharz
21f744f44a
Merge pull request #16286 from keymanapp/refactor/web/contextManager
refactor(web): adjust function visibility and variable names
2026-07-30 15:51:50 +02:00
Eberhard Beilharz
7072e6a599
Merge pull request #16280 from keymanapp/maint/android/16279_api36
maint(android): update Android Target API to 36

This change updates the Android Target API to 36 to satisfy the upcoming annual Play Store Aug 31 requirement. It updates Keyman for Android to use API level 36 by changing the compileSdk and targetSdkVersion properties to 36.

Changes made by AI (Gemini 3 Flash Preview).

Fixes: #16279
2026-07-30 15:51:25 +02:00
rc-swag
5cc2444cd6
Merge pull request #15961 from keymanapp/fix/windows/clone-state-actions-deep-copy
fix(core): clone state actions deep copy
2026-07-30 10:24:42 +10:00
Joshua Horton
051ef41a26 fix(web): restore backspace-input token reconstruction
Before epic/autocorrect, input of a pure backspacing transform would perform special operations within the predictive-text worker, reconstructing the remainder of the token and erasing fat-finger data.  This PR fixes the regression.

This is notably useful when attempting to erase part of an applied suggestion, as applied suggestions wholesale-replace the original versions of affected tokens with a single transform input.  Backspacing into the transform will then break that unitary transform into pieces better suited for ongoing predictive-text operations.

Build-bot: skip build:web build:android
2026-07-29 16:28:42 -05:00
Joshua Horton
f2e160c232 feat(web): add unit tests for prior commit
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-07-28 12:01:03 -05:00
Joshua Horton
7db38f93ec fix(web): do not remove applied transition ID from original token when editing 2026-07-28 08:40:44 -05:00