Commit graph

673 commits

Author SHA1 Message Date
Joshua Horton
13ae31e2e6
Merge pull request #16450 from keymanapp/fix/web/support-transposition-autocorrect
fix(web): support autocorrection of transposed text
2026-09-17 01:33:19 +07:00
Joshua Horton
4945ae9407 change(web): discard transposition paths that require extra inserts or deletes 2026-09-15 09:14:30 -05:00
Joshua Horton
18f334a60e fix(web): handle 'unload' message while attempting model 'load'
Fixes: KEYMAN-WEB-MD

Build-bot: skip build:web
Test-bot: skip
2026-09-09 13:49:12 -05:00
Joshua Horton
3b626da355 change(web): allow autocorrection on input of basic whitespaces
Build-bot: skip
Test-bot: skip
2026-09-08 10:25:02 -05:00
Joshua Horton
c0052f8620 Merge remote-tracking branch 'origin/fix/web/support-transposition-autocorrect' into fix/web/support-transposition-autocorrect
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-09-04 16:51:59 -05:00
Joshua Horton
60f5effe6e change(web): add transposition unit tests, loosen search correction thresholding 2026-09-04 16:50:56 -05:00
Joshua Horton
78e3d509f4 Merge branch 'master' into fix/web/support-transposition-autocorrect 2026-09-03 09:44:18 -05:00
Joshua Horton
fd45e8df24 docs(web): adjust header comment to tweak build
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-09-02 13:33:53 -05:00
Joshua Horton
1c528dde8f
change(web): apply MD suggestion from code review
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-08-31 21:27:00 +07:00
Joshua Horton
45e3df9822 fix(web): support autocorrection of transposed text
Fixes: #16398
Fixes: #12311

Note:  will not handle transpositions that cross token boundaries.
Also note:  major changes will be needed for epic/boundary-correction, as it will discontinue use of the LegacyQuotientSpur type.

Build-bot: skip release:web,android,ios
2026-08-27 12:28:18 -05:00
Joshua Horton
605d823349 Merge remote-tracking branch 'origin/change/web/stage-correctpredicttuple-construction' into change/web/narrow-autoselection-comparisons
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-08-27 07:22:55 -05:00
Joshua Horton
775b60ba4c
change(web): apply MD suggestion from code review
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-08-26 21:27:25 +07:00
Joshua Horton
5481425bf4 docs(web): add predict-helpers.ts header doc
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-08-26 08:42:13 -05:00
Joshua Horton
c278c3601f change(web): narrow the range of suggestions examined to determine autocompletion
Build-bot: skip build:web
2026-08-25 10:48:54 -05:00
Joshua Horton
0e41273465 change(web): stage construction of CorrectionPredictionTuple instances
Build-bot: skip build:web
Test-bot: skip
2026-08-24 13:36:49 -05:00
Joshua Horton
67d7ef80e2
Merge pull request #16337 from keymanapp/change/web/rework-taillesss-penultimate-token
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
change(web): rework penultimate token handling in tailless-keystroke method 🚂
2026-08-13 20:43:15 +07: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
a3f6af9bc9 change(web): add tailless-true-keystroke method assertion
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-08-12 11:04:52 -05:00
Joshua Horton
4c120b9137 change(web): clean up id-tagging transform-map for-each 2026-08-12 10:57:04 -05: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
Joshua Horton
515994135c change(web): rework penultimate token handling in tailless-keystroke method
Build-bot: skip build:web
Test-bot: skip
2026-08-10 11:20:30 -05: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
6c2d873d09 change(web): relocate comment per PR review 2026-08-06 13:39:46 -05: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
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
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
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
7db38f93ec fix(web): do not remove applied transition ID from original token when editing 2026-07-28 08:40:44 -05:00
Joshua Horton
f864bf293a change(web): spin off method, add unit tests to verify handling of keep vs revert suggestions
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-07-27 12:11:50 -05:00
Joshua Horton
e225b26f10 change(web): add unit tests for issues fixed by this PR
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-07-23 15:52:53 -05:00
Joshua Horton
5a1e23d727 fix(web): handle prediction whitespace-input, backspace-input edge cases better
Fixes: #16271
Fixes: #16272

Build-bot: skip release:web,android,ios
2026-07-21 13:40:21 -05:00
Joshua Horton
13af7821c3 fix(web): prevent backspace from clustering with output keys 2026-07-21 13:40:21 -05:00
Joshua Horton
f3e0f0bfd5
Merge pull request #16123 from keymanapp/fix/web/block-keep-autoaccept
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
fix(web): do not auto-select model-matching keep suggestions 🚂
2026-07-09 21:27:09 +07:00
Joshua Horton
3263392908
Merge pull request #16208 from keymanapp/change/web/stop-negation-of-reversion-transition-id
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
change(web): stop negation of reversion transition IDs 🚂
2026-07-09 01:33:40 +07:00
Joshua Horton
21c18a4ca5
change(web): Apply suggestion from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-07-09 00:51:10 +07:00
Joshua Horton
a5382b298e
Merge pull request #16148 from keymanapp/change/web/transition-id-nomenclature
change(web): polish documentation, remove Suggestion.transformId in predictive text 🚂
2026-07-09 00:44:10 +07:00
Joshua Horton
94e67290e1 change(web): stop negation of reversion transition IDs
Build-bot: skip build:web
Test-bot: skip
2026-07-06 10:07:15 -05:00
Joshua Horton
a14aca9214 Merge branch 'epic/autocorrect' into fix/web/block-keep-autoaccept 2026-07-06 08:34:02 -05:00
Joshua Horton
6f72c2f75c change(web): drops repeated fields from extended class 2026-07-06 08:28:39 -05:00
Joshua Horton
4fbfcb9940 change(web): clarify merge, split edit token-mapping types
Build-bot: skip build:web
Test-bot: skip
2026-06-30 10:40:00 -05: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
Joshua Horton
229e535592 docs(web): add doc-comments for context-tokenization.ts params, types
Build-bot: skip build:web
Test-bot: skip
2026-06-22 15:30:45 -05:00
Joshua Horton
b029b1993b fix(web): do not auto-select model-matching keep suggestions
Fixes: #12312

Do, however, prevent auto-selection of any other suggestion when a model-matching 'keep' is available.

Build-bot: skip build:web build:android build:ios
2026-06-22 13:52:48 -05: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
94da9183eb
Merge pull request #15912 from keymanapp/docs/web/fixtypos
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-05-08 17:18:16 +02:00
Eberhard Beilharz
c414904da8
docs(web): fix minor typo and add links
Build-bot: skip
Test-bot: skip
2026-05-06 11:27:28 +02:00
Joshua Horton
7b52db2e84
Merge pull request #15855 from keymanapp/feat/web/quotient-node-finalizer
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
feat(web): adds finalizer quotient-node type for facilitating multi-word corrections 🚂
2026-05-06 02:53:08 +07:00
Joshua Horton
656b392bc8
Merge pull request #15162 from keymanapp/feat/web/search-space-node-propagation
feat(web): ensure all child spaces are notified when parent reaches end of a correction path 🚂
2026-05-06 02:52:57 +07:00