Commit graph

2107 commits

Author SHA1 Message Date
Steven R. Loomis
5f836d72f0
Merge pull request #11059 from keymanapp/fix/core/11045-assert-marker
fix(core,developer): variable/marker substitution in sets and strings🙀
2024-03-28 00:11:28 -05:00
Marc Durdin
1bc5db3527 fix(common): make isEmptyTransform return true if passed a nullish transform
Fixes #11084.
2024-03-28 10:45:08 +07:00
Joshua A. Horton
75dff78a30 chore(web): Merge branch 'change/web/input-sequentialization' into fix/web/queued-closure-source-linking 2024-03-27 09:48:17 +07:00
Joshua A. Horton
38d80bcdd6 chore(web): Merge branch 'fix/web/proper-gesture-match-sequencing' into change/web/input-sequentialization 2024-03-27 09:47:45 +07:00
Joshua A. Horton
45e43d4b84 chore(web): Merge branch 'fix/web/infinite-model-replacement-loop' into fix/web/proper-gesture-match-sequencing 2024-03-27 08:24:14 +07:00
Joshua A. Horton
a6144c0730 chore(web): Merge branch 'fix/web/early-matchGesture-abort' into fix/web/infinite-model-replacement-loop 2024-03-27 08:23:48 +07:00
Joshua A. Horton
37b31f1abd chore(web): Merge branch 'fix/web/sticky-preview' into fix/web/early-matchGesture-abort 2024-03-27 08:23:21 +07:00
Steven R. Loomis
baeb3c80fc fix(developer): fix an additional issue on illegal UnicodeSets
- update comments per review comments
- improve logic of checks around malloc
2024-03-26 17:24:56 -05:00
Steven R. Loomis
f2ad7d4e68 fix(common): further improvement to string/set substitution
- tran: check for \uXXXX earlier in the chain, because we emit this format further down
- add test cases for syntax chars being used in variables

Fixes: bug(core): assert when matching markers #11045
Fixes: bug(developer): escape on string substitution if syntax char #11037
2024-03-25 14:52:32 -05:00
Steven R. Loomis
f773066fa0 fix(developer): store set variables in literal form, unescape in tran
- update the tran compiler to call escapeStringForRegex() on set items being substituted into an expression
2024-03-25 12:46:55 -05:00
Steven R. Loomis
67838e60a2 fix(developer,core): fix for marker substitution in sets
- for bug(core): assert when matching markers #11045
- track raw and marker-substituted sets
2024-03-25 12:00:55 -05:00
Steven R. Loomis
18ba46d874 fix(common): fix an additional issue on illegal UnicodeSets
- similar fix to https://github.com/keymanapp/keyman/pull/9492
- again may be due to a wasm version variant
- also additional rangechecking on the input side
2024-03-25 10:26:33 -05:00
Marc Durdin
ea8366455c chore(web): update test fixture 2024-03-21 14:03:40 +07:00
Marc Durdin
8fbb0c3281 chore(web): update tests 2024-03-21 10:38:43 +07:00
Marc Durdin
a54053bec6 fix(web): prevent layer switch key from erasing selection
Fixes #7866.

When the transform generated by a key event results in no changes to the
text, this will no longer trigger a change event in the apps. This means
that layer switch keys will no longer erase the selection.

Fix proposed by @jahorton.
2024-03-21 10:08:23 +07:00
Marc Durdin
812e914e87 fix(developer): min Keyman version for LDML is 17.0
Fixes #10959.
2024-03-11 15:15:47 -05:00
Marc Durdin
c99aecacde fix(ios): remove '--debug' from build declaration
The '--debug' flag should not be specified as a parameter in the
builder_describe call.
2024-03-11 12:02:57 -05:00
Joshua A. Horton
9b2417d238 fix(web): null guards for source Promise closure-capture source when already cleared 2024-03-08 23:01:43 +07:00
Joshua A. Horton
b6df9ac510 fix(web): touchend handler should use .changedTouches, not .touches 2024-03-08 08:34:11 +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 A. Horton
a618b85a94 chore(web): Merge branch 'change/web/input-sequentialization' into fix/web/queued-closure-source-linking 2024-03-08 08:02:59 +07:00
Joshua A. Horton
68f5c0137c chore(web): Merge branch 'fix/web/proper-gesture-match-sequencing' into change/web/input-sequentialization 2024-03-08 08:01:09 +07:00
Joshua A. Horton
3075643415 chore(web): Merge branch 'fix/web/infinite-model-replacement-loop' into fix/web/proper-gesture-match-sequencing 2024-03-08 08:00:44 +07:00
Joshua A. Horton
f6fdca2028 chore(web): Merge branch 'fix/web/early-matchGesture-abort' into fix/web/infinite-model-replacement-loop 2024-03-08 08:00:12 +07:00
Joshua A. Horton
e5c9cc6a36 chore(web): Merge branch 'fix/web/sticky-preview' into fix/web/early-matchGesture-abort 2024-03-08 07:59:36 +07:00
Marc Durdin
ffe43d29ef
Merge branch 'beta' into fix/developer/10942-normalize-paths-in-kmc-package 2024-03-07 18:13:43 +07:00
Joshua A. Horton
727a3cf144 fix(web): robustness handling with new source-track style 2024-03-07 15:21:58 +07:00
Joshua A. Horton
b548c88458 fix(web): proper linkage of sources to events 2024-03-07 14:08:13 +07:00
Marc Durdin
7d03010479 fix(developer): normalize all input paths in .kps compiler
Fixes #10942.
2024-03-05 17:34:06 -06:00
Joshua A. Horton
3755de74ac fix(web): pending-source tracking cleanup 2024-03-04 09:32:04 +07:00
Steven R. Loomis
8975a38109 chore(common): ldml update out of techpreview 🙀
- updates to support techpreview -> 45

Fixes: #10900
2024-03-02 22:40:38 -06:00
Marc Durdin
abd5a86196
Merge branch 'beta' into refactor/developer/10207-message-detail 2024-03-01 07:54:31 +07:00
Joshua A. Horton
d74bc8f926 docs(web): doc-comment typo 2024-02-29 13:03:12 +07:00
Joshua A. Horton
495ee46938 chore(web): minor extra cleanup 2024-02-29 12:59:17 +07:00
Marc Durdin
4bb9b39ba2 refactor(developer): reorganize messages for adding details
Moved the ERROR_Message line above the Error_Message line for every
message in the compiler message files, as it makes the grouping clearer
once we start adding message details. For example, see the start of the
KmnCompilerMessages class.

Also wraps potentially-undefined parameters to the messages with a new
function `def`, shorthand for `CompilerMessageDef`, which converts the
parameter to '<param>' if it is undefined, which is helpful for
documentation.
2024-02-28 16:00:02 +07:00
Marc Durdin
c7afed7201 refactor(developer): split messages with callstacks into separate generator
Relates to #10207.

In order to include message detail in messages, it is helpful to split
out the exception messages which have a separate parameter, so that
parameter at the same position can be the message detail.

Introduces the CompilerMessageSpecWithException function which takes an
exceptionVar parameter to achieve this differentiation.
2024-02-28 11:34:49 +07:00
Steven R. Loomis
9c2a73a290 chore(common,developer): rename unicodeSet to uset in code
Fixes: rename unicodeSet to uset 🙀  #10657
2024-02-27 18:15:57 -06:00
Marc Durdin
e1a8ce47e3
Merge pull request #10821 from keymanapp/fix/developer/10396-repeated-options-in-kmc
fix(developer): repeated options in kmc must now be fully specified
2024-02-27 16:04:50 +07:00
Joshua A. Horton
b09a1ba176 change(web): concurrency lock-management ordering 2024-02-27 13:31:08 +07:00
Joshua A. Horton
fd30786ac5 feat(web): an extra unit test 2024-02-27 13:16:33 +07:00
Joshua A. Horton
b5cf14a6e0 feat(web): closure-queue unit tests 2024-02-27 13:08:53 +07:00
Joshua A. Horton
2da832816a change(web): unlockTouchpoint -> fulfillInputStart 2024-02-27 10:59:07 +07:00
Joshua A. Horton
dae1126098 change(web): better nomenclature, fixes triggerEvent 2024-02-27 10:40:02 +07:00
Joshua A. Horton
03a329ae46 docs(web): minor comment tweak 2024-02-27 10:06:17 +07:00
Joshua A. Horton
e8fb4a1441 change(web): more explicit 'cancelled'-rejection handling, documentation 2024-02-27 10:02:09 +07:00
Joshua A. Horton
3e7c8fa164 fix(web): triggerEvent should fire just one, not loop 2024-02-27 09:25:06 +07:00
Marc Durdin
70a50f0f67 refactor(developer): move osk module from common-types to developer-utils
This module is used only by Keyman Developer compiler. It was originally
in common-types because we didn't have a shared module for Developer.

Moving it to @keymanapp/developer-utils in order to improve its
documentation.
2024-02-26 14:57:27 +07:00
Joshua A. Horton
c915d1e6a2 fix(web): unit test adjustment for compat with last commit 2024-02-26 14:02:12 +07:00
Joshua A. Horton
fd97412bc4 change(web): implements a touch-event sequentialization queue 2024-02-26 14:01:52 +07:00
Joshua A. Horton
57079f3c02 chore(web): cleans condition comment 2024-02-26 12:09:43 +07:00