Marc Durdin
866ede8ea4
chore(web): clarify LanguageProcessorSpec usage
...
We had the interface but never showed where it was implemented.
Test-bot: skip
2026-09-25 08:45:32 +02:00
Marc Durdin
45a0cd9469
chore(web): improve reporting on dictionary load errors
...
Some error messages do not include the URL, so it can be hard to
disambiguate them. Will not back-port to 18.0, because the errors are
currently rare.
See-also: #16628
Test-bot: skip
2026-09-24 09:36:03 +02:00
Marc Durdin
3c90c732e1
chore(android): remove unused map-polyfill.js and es6-shim.min.js polyfills
...
These files were copied in but never referenced in 19.0 source.
Fixes : #16583
Test-bot: skip
2026-09-23 11:25:13 +02:00
Joshua Horton
bf98a2f03b
Merge pull request #16600 from keymanapp/change/web/lexically-weight-prediction-search
...
change(web): add lexical weighting to prediction search
2026-09-21 21:50:24 +07:00
Joshua Horton
02274223fd
fix(android): suppress autocorrection of hardware keystroke input
...
Fixes : #16602
Build-bot: skip release:web,android
2026-09-18 09:14:59 -05:00
Joshua Horton
00a9b66b01
Merge pull request #16581 from keymanapp/change/web/remove-tokenization-corrector
...
change(web): remove TokenizationCorrector class only used in epic/boundary-correction
2026-09-18 20:08:35 +07:00
Joshua Horton
013def7d9c
change(web): add lexical weighting to prediction search
...
Fixes : #16577
From 14.0 up until now, our correction-search focused on the minimum "correction distance" to a possible text _correction_, then performed prediction _on top of that_. This PR changes the search to integrate word-frequency weighting from models within the search, allowing us to optimize for the most likely predictions. There is no additional performace cost impact of note here - the probability associated with a correction's best prediction is already accessible O(1) with operations we've already been doing.
It is likely that this will help further mitigate issues with transposition handling noted in the user tests for #16450 .
Build-bot: skip release:web,android,ios
2026-09-17 16:30:50 -05:00
Eberhard Beilharz
7b2f275eb1
Merge pull request #16524 from keymanapp/fix/web/16080_kbdoff
...
fix(web): allow to set default keyboard to 'off'
The parameters for setKeyboardForControl basically have three different modes: - an id of a keyboard/language to set that keyboard, enabling independent keyboard mode - empty string to set the system keyboard, enabling independent keyboard mode - null to disable independent keyboard mode.
Our previous code didn't properly handle the last two modes. This change fixes the problems and also clarifies and updates the documentation.
Also included is an improvement to the guide-examples e2e tests that now wait until all keyboards are loaded (which may fix #16167 ).
Partially drafted by kilo.ai.
User tests will follow in an upcoming PR for #16522 .
Fixes : #16080
2026-09-17 17:25:24 +02:00
Joshua Horton
115f2dba20
change(web): remove TokenizationCorrector class only used in epic/boundary-correction
...
Build-bot: skip build:web
Test-bot: skip
2026-09-16 16:53:55 -05:00
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
Eberhard Beilharz
3671ab06bb
refactor(web): add header to osk views files
...
Also remove outdated mentioning of Keyman 10 and outdated copyright year.
Build-bot: skip
Test-bot: skip
2026-09-15 14:43:44 +02: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
Eberhard Beilharz
4d7867e61c
fix(web): allow to set default keyboard to 'off'
...
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
The parameters for `setKeyboardForControl` basically have three
different modes:
- an id of a keyboard/language to set that keyboard, enabling independent
keyboard mode
- empty string to set the system keyboard, enabling independent keyboard
mode
- `null` to disable independent keyboard mode.
Our previous code didn't properly handle the last two modes. This change
fixes the problems and also clarifies and updates the documentation.
Also included is an improvement to the guide-examples e2e tests that now
wait until all keyboards are loaded (which may fix #16167 ).
Partially drafted by kilo.ai.
Fixes : #16080
Build-bot: skip release:web
2026-09-08 11:56:41 +02:00
Eberhard Beilharz
d2abc847ff
refactor(web): simplify logic of prepareKeyboardForActivation
...
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-09-07 18:32:56 +02:00
Eberhard Beilharz
04a5cd13c9
chore(web): minor improvements and fixes
...
Keyman Build Summary / Summarize build status checks (push) Waiting to run
Build-bot: skip build:web
Test-bot: skip
2026-09-07 17:05:06 +02:00
Joshua Horton
c0052f8620
Merge remote-tracking branch 'origin/fix/web/support-transposition-autocorrect' into fix/web/support-transposition-autocorrect
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
Eberhard Beilharz
58dbb3d1ee
refactor(web): clarify scope of PageContextAttachment functions
...
Also refactor function comments to follow the style we usually use,
and rename some parameters.
Build-bot: skip build:web
Test-bot: skip
2026-09-03 16:46:56 +02:00
Joshua Horton
78e3d509f4
Merge branch 'master' into fix/web/support-transposition-autocorrect
2026-09-03 09:44:18 -05:00
Joshua Horton
b665a19e7a
Merge pull request #16436 from keymanapp/change/web/narrow-autoselection-comparisons
...
change(web): narrow the range of suggestions examined to determine autocompletion
2026-09-03 20:16:56 +07:00
Joshua Horton
b659a287fb
Merge pull request #16429 from keymanapp/change/web/stage-correctpredicttuple-construction
...
change(web): stage construction of CorrectionPredictionTuple instances
2026-09-03 20:16:35 +07:00
Joshua Horton
fd45e8df24
docs(web): adjust header comment to tweak build
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-09-02 13:33:53 -05:00
Eberhard Beilharz
a1d50b35bb
Apply batched suggestions from code review
...
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-09-02 15:04:40 +02:00
Eberhard Beilharz
7a61311147
chore(web): tweak error message
...
Previously the browser component and web engine had the same error message
which made it harder to know where the exception happened if a call stack
or source map were missing. This change modifies the message in engine.
Related-to: $#16190
Build-bot: skip release:android,ios,web
Test-bot: skip
2026-09-01 17:29:41 +02:00
Joshua Horton
1c528dde8f
change(web): apply MD suggestion from code review
...
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
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
...
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
39a7652056
change(web): apply MD suggestion from code review
...
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-08-26 20:47:57 +07:00
Joshua Horton
5481425bf4
docs(web): add predict-helpers.ts header doc
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-08-26 08:42:13 -05:00
Joshua Horton
27b60a4fcc
change(web): enhance missing-stubs error
...
Relates-to: #15425
Build-bot: skip build:web
Test-bot: skip
2026-08-25 13:22:04 -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
Marc Durdin
3774b2d8ab
Merge branch 'master' into epic/autocorrect
2026-08-19 20:37:51 +07:00
Joshua Horton
9372137bee
change(web): mark a couple fields private
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-08-18 09:12:42 -05:00
Joshua Horton
7a7ca44242
change(web): merge gesture-completion handler and cancler for HeldRepeater
2026-08-18 08:12:51 -05:00
Joshua Horton
0f666be3d5
docs(web): document GestureHandler.cancel idempotency
2026-08-17 08:21:52 -05:00
Joshua Horton
3c13dfb175
refactor(web): refactor HeldRepeater class
2026-08-17 08:12:05 -05:00
Joshua Horton
5a7b7118ff
Merge pull request #16314 from keymanapp/change/web/match-fatfingers-by-element-ids
...
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
change(web): lookup key-data via elementID, not reference, during fat-finger generation 🚂
2026-08-17 19:05:51 +07:00
Joshua Horton
d153ecb1c0
fix(web): cancel gestures on relayouts and context resets
...
Related-to: #15226
This fixes the bug underlying the repro described here: https://github.com/keymanapp/keyman/issues/15226#issuecomment-3842211229
I cannot yet confirm that it fixes the issue as a whole, however.
Build-bot: skip build:web release:android release:ios
2026-08-14 15:26:57 -05:00
Joshua Horton
30c5898eba
change(web): address missing key entry in subkey correction map
2026-08-14 12:02:31 -05: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
a672fa21f3
fix(web): use correct layer for key-correction, even upon nextLayer key input
...
Keyman Build Summary / Summarize build status checks (push) Waiting to run
Fixes: KEYMAN-WEB-SP
Fixes: KEYMAN-WEB-SQ
2026-08-13 14:34:57 -05:00
Joshua Horton
67d7ef80e2
Merge pull request #16337 from keymanapp/change/web/rework-taillesss-penultimate-token
...
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
29edaa48a4
change(web): address a couple more
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
...
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