Commit graph

5301 commits

Author SHA1 Message Date
Keyman Server
7b9864810f
Merge branch 'epic/embed-osk-in-kmx' into auto/A19S23-merge-master-into-embed-osk-in-kmx 2026-02-27 08:25:14 +01:00
Joshua Horton
5c445d470c change(web): remove temp debug shell-script echo statements 2026-02-18 12:59:17 +07:00
Joshua Horton
b7975973af maint(web): ensure Web build scripts handle paths with spaces properly
The command shortcuts that were used by Web
scripts to create bundles via `esbuild` were not
properly handling the $KEYMAN_ROOT path when it
contained a space.  These changes will rectify
this behavior and permit builds for such cases.

Build-bot: skip build:web
Test-bot: skip
2026-02-18 09:14:30 +07:00
Keyman Server
7bdd4b5254
Merge branch 'epic/embed-osk-in-kmx' into auto/A19S22-merge-master-into-embed-osk-in-kmx 2026-02-13 04:58:57 +01:00
Joshua Horton
b3e045a7a8 change(web): define, utilize cleaner Web test-resource import paths
Build-bot: skip build:web
Test-bot: skip
2026-02-05 10:11:14 -06:00
Marc Durdin
414092abf6
Merge branch 'epic/embed-osk-in-kmx' into auto/A19S20-merge-master-into-embed-osk-in-kmx 2026-01-16 08:39:08 +01:00
Eberhard Beilharz
f8dbd6963b
Merge pull request #15313 from keymanapp/docs/web/fixtypo 2025-12-09 12:33:18 +01:00
Eberhard Beilharz
df806e10b6
docs(web): remove specific version from documentation
This removes the specific version from the control-by-control example
and thus makes it similar to the other examples where we use a relative
path. `get-started.md` and the *.html files will still show how this can
be done with a specific version.

Build-bot: skip
Test-bot: skip
2025-12-08 10:26:09 +01:00
Eberhard Beilharz
a18ad08a8f
docs(web): update version in documentation
Addresses a code review comment.
2025-12-08 10:20:00 +01:00
Eberhard Beilharz
4e291b8ef1
Update web/docs/engine/guide/get-started.md
Co-authored-by: Marc Durdin <marc@durdin.net>
2025-12-08 10:14:33 +01:00
Eberhard Beilharz
a1ec9371e6
docs(web): fix typo in osk documentation 2025-12-05 17:39:11 +01:00
Eberhard Beilharz
22c8a66731
docs(web): add links to next/previous page to web guide
Build-bot: skip
Test-bot: skip
2025-12-05 15:54:46 +01:00
Keyman Server
2d29ef52e4
Merge branch 'epic/embed-osk-in-kmx' into auto/A19S17-merge-master-into-embed-osk-in-kmx 2025-12-05 07:58:49 +01:00
Marc Durdin
a09c3064bb maint(common): pass 'test' flag in to builder_launch test.sh
Long-term builder_launch may need to handle the default action in child
builds, but this is really an outlier and for now, fixing here.

This resolves a situation where the unit tests were not running for web
after the builder_launch update.

Fixes: #15130
Build-bot: skip build:web
2025-12-02 10:29:09 +01:00
Marc Durdin
c524db41b9 maint(common): use builder_launch for child builds
Fixes: #15130
Test-bot: skip
2025-12-02 06:17:31 +01:00
Keyman Server
7ad056bf5f
Merge branch 'epic/embed-osk-in-kmx' into auto/A19S16-merge-master-into-embed-osk-in-kmx 2025-11-20 11:08:48 +01:00
Eberhard Beilharz
ef64529300
Merge pull request #15159 from keymanapp/fix/web/defaultpath
fix(web): improve determination of default path

Browser extensions can dynamically insert scripts into a web page, so it's possible that the last script is not what we expected, which can cause the path to the script to be wrong. This change fixes the determination of the default path by using the `document.currentScript` property. It also replaces the use of the deprecated `substr` function in those places.

Fixes: #15158
2025-11-14 14:50:44 +01:00
Marc Durdin
57c0fa3d03
Merge pull request #15129 from keymanapp/maint/resources/builder_launch
maint(resources): add `builder_launch` function
2025-11-14 14:24:19 +01:00
Eberhard Beilharz
fc04e2445b
fix(web): address code review comments
Deal with `currentScript` being null/undefined.
2025-11-14 12:35:59 +01:00
Eberhard Beilharz
cb1a308418
fix(web): improve determination of default path
Browser extensions can dynamically insert scripts into a web page, so
it's possible that the last script is not what we expected, which
can cause the path to the script to be wrong. This change fixes the
determination of the default path by using the `document.currentScript`
property. It also replaces the use of the deprecated `substr` function
in those places.

Fixes: #15158
Test-bot: skip
2025-11-13 18:41:27 +01:00
Eberhard Beilharz
408514daf3
Update web/src/engine/js-processor/src/deadkeys.ts
Co-authored-by: Marc Durdin <marc@durdin.net>
2025-11-10 12:00:28 +01:00
Marc Durdin
5dbc438f53 maint(resources): add builder_launch function
Use `builder_launch` to launch other builder scripts rather than calling
directly, so that inheritable state and options are passed through.

Test-bot: skip
2025-11-10 11:46:14 +01:00
Eberhard Beilharz
269d619ed9
docs(web): add another clarifying comment 2025-11-07 17:32:33 +01:00
Keyman Server
b7c93d9e37
Merge branch 'epic/embed-osk-in-kmx' into auto/A19S15-merge-master-into-embed-osk-in-kmx 2025-11-07 14:06:33 +01:00
Eberhard Beilharz
03831e4f25
fix(web): clarify meaning of parameters for isMatch 2025-11-07 13:47:23 +01:00
Eberhard Beilharz
98ed960c8f
fix(web): address code review comments 2025-11-07 13:22:45 +01:00
Eberhard Beilharz
28d3378589
fix(web): add unit tests for DeadkeyTracker and fix a few bugs
- initialize `Deadkey.matched` in c'tor
- fix `Deadkey.equal` method
- verify deadkey exists before removing it in `DeadkeyTracker.remove`
- add unit tests for DeadkeyTracker

Test-bot: skip
2025-11-07 12:09:54 +01:00
Darcy Wong
238094c4e6 fix(web): Use build/test-resources/keyboards path for web test page 2025-10-31 11:25:32 +07:00
Darcy Wong
3872f57cbf fix(common): Update references to test9469 keyboard 2025-10-30 13:03:09 +07:00
Darcy Wong
66b5aeb614 chore(common): Move test9469 keyboard to common/test/keyboards/ 2025-10-30 11:56:07 +07:00
Darcy Wong
02619c2ef5 fix(web): Update manual test page to use common platformtest.js 2025-10-28 11:31:13 +07:00
Keyman Server
87420e15c1
Merge branch 'epic/embed-osk-in-kmx' into chore/A19S14-merge-master-into-embed-osk-in-kmx 2025-10-24 11:14:03 +02:00
Darcy Wong
00b6c71eb4 fix(web): Create test-resources/keyboards dir 2025-10-24 10:09:46 +07:00
Darcy Wong
616092e0f7 fix(web): Copy common keyboards to test-resources 2025-10-24 09:08:31 +07:00
Darcy Wong
4bff2c81d5 chore(web): Update web test page reference to chirality.js 2025-10-22 06:53:29 +07:00
Darcy Wong
d0ea16b975 chore(web): Move chirality.js to common/test/resources/keyboards/ 2025-10-21 13:49:37 +07:00
Marc Durdin
39951f15f6
Merge branch 'feat/common/add-osk-embed-support-to-kmx-plus' into change/developer/test-special-key-cap-wet-definitions 2025-10-16 12:46:36 +02:00
Marc Durdin
db5aa518c0 change(developer): add unit test to verify special key cap definitions
Special key caps such as '*ZWNJ*' are defined in a number of places in
the source. In theory, we could DRY these definitions out, but that
would add a number of unhelpful dependencies or take considerable time
to implement. So, for now I opted to write a unit test to compare the
definitions as found in the following files, treating web's definition
as primary:

 *   web/src/engine/osk/src/specialCharacters.ts
 *   developer/src/tike/xml/layoutbuilder/constants.js
 *   developer/src/kmc-kmn/kmw-compiler/constants.ts
 *   developer/docs/help/reference/file-types/keyman-touch-layout.md
 *   core/include/ldml/keyman_core_ldml.ts

Note that the keyman_core_ldml.ts file changes are not included in this
commit, and hence the unit test for it is currently skipped. This will
be enabled in a subsequent commit along with other KMX+ changes to
support epic/embed-osk-in-kmx.

Test-bot: skip
2025-10-16 12:37:44 +02:00
Marc Durdin
d34f238eeb chore(web): update helpURL documentation and float ui link
Make the float UI KeymanWeb link point to the home for KeymanWeb, and
https rather than http, and update the helpURL documentation to match
the current endpoint.

Test-bot: skip
Build-bot: skip
2025-10-15 07:57:08 +02:00
Eberhard Beilharz
229bdf8270
maint(resources): nest unit tests under parent block
This adds a modified `mocha-teamcity-reporter` that allows to nest the
unit tests under the parent block.

Fixes: #14839
Test-bot: skip
2025-10-06 16:09:47 +02:00
Eberhard Beilharz
34c43b1e15
refactor(web): cleanup in test scripts
Also use common function for running web types tests.

Test-bot: skip
2025-09-30 17:40:15 +02:00
Eberhard Beilharz
e92a82db62
Merge pull request #14684 from keymanapp/fix/web/14108_NaN
PR #13860 fixed a similar error by adding a check for NaN. However, it missed doing it for `layoutWidth` and only changed `layoutHeight`. 

This PR adds a similar check to `layoutWidth` and will thus fix the error we're still seeing in Sentry.

Also add unit tests for both methods.

Fixes: #14108
Fixes: [KEYMAN-WEB-RA](https://keyman.sentry.io/issues/6579536471/?referrer=github_integration)
2025-09-08 09:06:49 +02:00
Eberhard Beilharz
8e65d13559
Merge pull request #14646 from keymanapp/refactor/common/13205_UnifyWhatsNew
Standardize on `whatsnew.md`.

Fixes: #13205
Related: https://github.com/keymanapp/help.keyman.com/pull/2234
2025-09-05 09:44:02 +02:00
Eberhard Beilharz
f464008326
fix(web): add check to internalHeight
The same error could potentially happen in `internalHeight`, so we
add the check for NaN there as well. Addresses code review comments.
2025-09-05 09:35:50 +02:00
Eberhard Beilharz
74ef39726b
fix(web): fix error trying to calculate style scaling effects
PR #13860 fixed a similar error by adding a check for NaN. However, it
missed doing it for `layoutWidth` and only changed `layoutHeight`. This
PR adds a similar check to `layoutWidth` and will thus fix the error
we're still seeing in Sentry.

Also add unit tests for both methods.

User Testing
============

TEST_INUKTITUT_KEYBOARD: Using Keyman for Android, install the
`inuktitut_pirurvik` and verify that no error notifications appear.

Fixes: #14108
Fixes: [KEYMAN-WEB-RA](https://keyman.sentry.io/issues/6579536471/?referrer=github_integration)
2025-09-04 17:28:15 +02:00
Joshua Horton
191db9cba9
Merge pull request #14618 from keymanapp/refactor/web/simplify-calculation-inputs
refactor(web): simplify edit-distance calculation-object inputs
2025-09-03 22:11:00 +07:00
Joshua Horton
770ac2a13f
Merge pull request #14592 from keymanapp/feat/web/search-subset-batching
feat(web): batch correction-search paths by related subsets
2025-09-03 22:10:46 +07:00
Joshua Horton
6969206701
Merge pull request #14581 from keymanapp/feat/web/transform-cataloging
feat(web): adds transform cataloging methods to predictive-text worker
2025-09-03 22:10:38 +07:00
Eberhard Beilharz
3e3cccc97d
Apply suggestions from code review
Co-authored-by: Darcy Wong <darcy_wong@sil.org>
2025-09-03 08:42:39 +02:00
Eberhard Beilharz
f166f11d14
docs(common): update docs Keyman Desktop → Keyman for Windows
Also change path to engine help pages. This requires a corresponding
change in help.keyman.com.

Test-bot: skip
2025-09-02 14:29:53 +02:00