Commit graph

85 commits

Author SHA1 Message Date
Eberhard Beilharz
cfacbb6cc5
refactor(web): rename OutputTarget interface → OutputTargetInterface 2025-06-05 13:22:32 +02:00
Marc Durdin
64d9128446 chore: Merge branch 'chore/merge-master-into-web-core' 2025-05-15 17:42:55 +02:00
Joshua Horton
d6579495f8 change(web): address recorder-tool linter errors 2025-04-29 11:54:44 +07:00
Eberhard Beilharz
3b2157cb83
refactor(web): cleanup OutputTarget class names
- rename `js-processor`'s `OutputTarget` → `OutputTargetBase`
- rename `element-wrappers`' `OutputTarget` → `OutputTargetElementWrapper`
2025-03-03 18:02:47 +01:00
Eberhard Beilharz
08b261c0d3
feat(web): add Keyboard and KMXKeyboard classes
The `Keyboard` class can be either a JS or KMX keyboard. Also make use
of the `Keyboard` class where it makes sense and add TODOs in the places
that still need to be implemented for KMX keyboard support.
2025-01-14 16:43:20 +01:00
Eberhard Beilharz
bd724a574e
refactor(web): rename KeyboardProcessor class to JSKeyboardProcessor
Also rename file `keyboardProcessor.ts` to `jsKeyboardProcessor.ts`.
2025-01-14 15:35:30 +01:00
Eberhard Beilharz
62cd0d6509
refactor(web): rename KeyboardInterface class to JSKeyboardInterface
Also rename file from `kbdInterface.ts` to `jsKeyboardInterface.ts`.
2025-01-14 15:35:29 +01:00
Eberhard Beilharz
c05cf0eff9
feat(web): re-implement timeout error test
The previous approach with overriding `onload` no longer works if we use
indirect eval. However, since we now need to use a server anyways instead
of directly loading a file (because of Core), we can add a timeout to
the test server and implement this test in a cleaner way.
2024-10-01 15:33:55 +02:00
Eberhard Beilharz
387a697990
chore(web): Merge branch 'epic/web-core' into feat/web/readkbd 2024-09-27 17:35:29 +02:00
Eberhard Beilharz
de717cce58
feat(web): address code review comments 2024-09-26 19:47:48 +02:00
Eberhard Beilharz
94b06b7ed7
feat(web): improve errors and tests
Addresses code review comments.
2024-09-16 17:34:03 +02:00
Marc Durdin
9ebd1a9b0a
Merge branch 'epic/web-core' into chore/merge-master-into-web-core 2024-09-13 08:09:24 +02:00
Eberhard Beilharz
f52a1209c8
refactor(web): merge device-detect with web/src/engine/main
This change moves `web/src/engine/device-detect/` →
`web/src/engine/main/` and renames the `Device` class to `DeviceDetector`.

Fixes: #12388
2024-09-11 16:48:15 +02:00
Eberhard Beilharz
a6d2d02e61
refactor(web): move common/web/utils to web/src/engine/common/web-utils/
Fixes:#12025
2024-09-10 18:12:46 +02:00
Eberhard Beilharz
c3e587193e
refactor(web): move model/types to web/types
Part-of: #12133
2024-09-09 19:59:01 +02:00
Eberhard Beilharz
0abc250af3
feat(web): POC of Core WASM integration into Keyman Web
- add temporary function to Core for this POC
- add new CoreProcessor to access Keyman Core WASM
- add unit tests for new core processor
- add code to KeymanEngine and InputProcessor to load the new CoreProcessor
- add web server to manual tests and new action `start` to build script

This change requires the manual tests to be loaded from a web server
instead of loaded as file, because otherwise the wasm code won't be
loaded.

Currently we always load CoreProcessor. This should be improved in a future
change to only load when it is actually needed.

Part-of: #11293
2024-08-20 22:45:39 +02:00
Eberhard Beilharz
78857d96c9
refactor(web): move lm-message-types → predictive-text/types
Moves `common/web/lm-message-types/` →
`web/src/engine/predictive-text/types/`

Fixes: #12147
2024-08-16 08:31:21 +02:00
Eberhard Beilharz
89abdbd64c
refactor(web): move some files around
- move `outputTarget.ts` → `js-processor`
- move `deadkeys.ts` → `js-processor`
- move `stringDivergence.ts` → `js-processor`
- split `Mock` into `mock.ts`
- create `keyboard/outputTarget.interface.ts`
2024-08-14 19:06:32 +02:00
Eberhard Beilharz
46ecfd4466
refactor(web): move remaining parts of keyboard-processor → keyboard
move parts of `common/web/keyboard-processor/` →
`web/src/engine/keyboard/`.

Fixes: #12110
2024-08-12 19:40:15 +02:00
Eberhard Beilharz
c09c895333
refactor(web): move parts of keyboard-processor → js-processor
Move parts of `common/web/keyboard-processor/` →
`web/src/engine/js-processor/`.

Note this temporarily disable tests for keyboard-processor which depend on
js-processor, until #12110 is fixed.

Fixes: #12067
2024-08-08 18:25:03 +02:00
Eberhard Beilharz
faacf9de8a
refactor(web): Move common/web/recorder → web/src/tools/testing/recorder-core
Fixes: #12091
2024-08-08 16:34:01 +02:00
Eberhard Beilharz
24159d680b
chore(web): move common/web/input-processor/ → web/src/engine/main/
Also:
- move `modelSpec.ts` and `PredictionContext.ts` →
  `web/src/engine/interfaces`
- move `correction.ts` and `correctionLayout.ts` to `web/src/engine/osk/`

Relates-to: #12035
Fixes: #12054
2024-08-01 20:13:21 +02:00
Joshua A. Horton
62fd5f6444 chore(web): Merge branch 'change/web/keyboard-preprocess-optimization' into feat/web/osk-layer-deferral 2024-06-19 15:31:02 +07:00
Joshua A. Horton
66955cd171 chore(web): Merge remote-tracking branch 'origin/feat/web/package-kbd-renderer' into feat/web/package-kbd-renderer 2024-06-06 08:51:45 +07:00
Joshua A. Horton
cce2f9a867 chore(web): Merge branch 'master' into feat/web/package-kbd-renderer 2024-06-06 08:51:08 +07:00
Joshua A. Horton
532bba95a8 chore(web): Merge branch 'master' into feat/web/package-kbd-renderer 2024-05-29 11:44:44 +07:00
Joshua A. Horton
7e1571d382 chore(web): the final push for config-flag parity for web/ 2024-05-29 10:57:41 +07:00
Joshua A. Horton
5ddcf2cbe5 chore(web): patches web tools for enforcement of no implicit any 2024-05-29 10:43:12 +07:00
Joshua A. Horton
824c389938 chore(web): cleans up web's tool projects 2024-05-29 09:24:37 +07:00
Marc Durdin
cd8121ef65 chore(common): builder scripts now use /resources/build/builder.inc.sh
Note: there is a bit of potential confusion about the difference between
/resources/builder.inc.sh (the full implementation for builder scripts),
and /resources/build/builder.inc.sh (the source script that builder
scripts should always use).

This allows us to make assumptions that will always be true for builder
scripts that may not be true for other scripts, such as setting base
folder.
2024-05-02 15:54:31 +07:00
Marc Durdin
0f390d47cc chore(common): maintenance on build scripts - cd
Fixes #11324.

* Always `cd "$THIS_SCRIPT_PATH"`
* Remove unnecessary `cd` from all build.sh
* Remove unnecessary `set -eu` from all build.sh (and `# set -x`)
* Replace old build-utils.sh incantation in a few build.sh scripts
2024-05-02 15:54:29 +07:00
Joshua A. Horton
44c178f94b fix(web): unit-test / test-engine patchup 2024-04-23 10:30:44 +07:00
Joshua A. Horton
26a99f07ac fix(web): unit test patchup - had incorrect touchend .touches values 2024-03-08 08:33:35 +07:00
Joshua Horton
9e5264b7ea
Update local-renderer.html
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2024-01-19 00:51:49 +07:00
Joshua A. Horton
b429a0cabb fix(web): better _legacyLayoutSpec filtering 2024-01-18 12:12:19 +07:00
Joshua A. Horton
d8767b1bee chore(web): error handling 2024-01-18 11:05:23 +07:00
Joshua A. Horton
1e6a83ab32 docs(web): child project readme update 2024-01-18 10:57:12 +07:00
Joshua A. Horton
21266dd109 feat(web): bulk_render variant - loads and renders keyboards from local KMP 2024-01-18 10:53:32 +07:00
Joshua A. Horton
d58260b4d6 fix(web): bulk renderer interface for recent-version targeting keyboards 2024-01-18 09:17:47 +07:00
Joshua A. Horton
f723f14fc3 chore(web): a bit more cleanup 2023-12-19 10:12:25 +07:00
Joshua A. Horton
f78eeaae34 chore(web): changes per review comments 2023-12-19 10:11:39 +07:00
Joshua A. Horton
5ecd95bd2b fix(web): had missed tools/testing/recorder bundling 2023-12-18 15:02:29 +07:00
Joshua A. Horton
3230612d9a change(web): final KMW-bundler script cleanup 2023-12-18 10:23:28 +07:00
Joshua A. Horton
cc9de9d5dd chore(web): Merge branch 'feature-gestures' into feat/web/modipress 2023-11-13 11:03:09 +07:00
Marc Durdin
33da132eab
Merge branch 'feature-gestures' into chore/merge-master-into-feature-gestures 2023-11-13 09:44:55 +11:00
Eberhard Beilharz
ac29930d1f
refactor(web): Link to index.html in test pages
This change adds `index.html` to all links that point to test index pages.
This will show the index page instead of the directory listing when
opening locally, identical to the behavior on TC.
2023-11-07 09:38:15 +07:00
Joshua A. Horton
b9d02cbe54 fix(web): automated-test patchup 2023-11-02 09:55:24 +07:00
Marc Durdin
a4817599b0 chore(web): remove legacy s_keyman_com.sh 2023-10-30 09:01:33 +07:00
Marc Durdin
6c00656849 chore(common): unify pull-request creation scripts
Fixes #9886.
2023-10-30 06:22:52 +07:00
Joshua A. Horton
ff19099c55 fix(web): automated test patchup due to added async 2023-10-19 12:18:26 +07:00