Commit graph

5162 commits

Author SHA1 Message Date
Marc Durdin
f355722191 fix(web): back out caps lock and refix
The Caps Lock change I made in the previous commit broke
desktop Caps Lock handling. The fix was a little more
convoluted. Turns out that _UpdateVKShift is also pretty
crufty. I simplified it, removing dead code.
2022-03-10 13:31:06 +11:00
Marc Durdin
9cabb7cd66 fix(web): add obolo_chwerty_6351 test keyboard 2022-03-10 13:31:05 +11:00
Marc Durdin
d879c1e3f6 fix(web): caps state tracking for touch
Selecting the new Caps Lock `caps` layer was not correctly setting the
layer state in the key event to `caps`, which caused Caps Lock rules
to fail to match.
2022-03-10 13:31:04 +11:00
Keyman Build Agent
64abc2914b auto: increment beta version to 15.0.211 2022-03-09 19:26:21 -05:00
Marc Durdin
6e1e7e8e7e chore: additional scripts 2022-03-10 10:26:15 +11:00
Marc Durdin
9f153ecc17 chore(common): cleanup sh global color variables
Some of the global color variables in shellHelperFunctions.sh were a
little dangerously named. This cleans that up and removes a couple of
redundant functions from other locations.

mac/bashHelperFunctions.sh should be removed and replaced with
references to shellHelperFunctions.sh -- but I wanted to leave that for
a separate branch.
2022-03-10 10:12:09 +11:00
Marc Durdin
0fb2a371a3 feat(common): build test keyboards via script
Relates to #5815.

build.sh is a new script that builds any or all of the keyboards in the
common/test/keyboards folder. build.bat is a wrapper for build.sh, just
for Windows CMD.

Assumes that kmcomp.exe has already been built or allows you to specify
your own kmcomp.exe if necessary.
2022-03-10 08:40:55 +11:00
Marc Durdin
6c04a11ef3 fix(developer): add obolo_chwerty_6347 for testing 2022-03-10 08:40:12 +11:00
Keyman Build Agent
6852aaadb4 auto: increment beta version to 15.0.210 2022-03-08 16:43:31 -05:00
Keyman Build Agent
0ccac84fbc auto: increment master version to 16.0.3 2022-03-03 13:02:25 -05:00
Keyman Build Agent
425c3ef72f auto: increment master version to 16.0.2 2022-03-02 04:05:12 -05:00
Keyman Build Agent
c4ca95e7a5 auto: increment master version to 15.0.206 2022-03-02 02:19:13 -05:00
Keyman Build Agent
db0753fa26 auto: increment beta version to 15.0.207 2022-03-02 01:45:00 -05:00
Keyman Build Agent
7dbf3ee7e2 auto: increment master version to 15.0.205 2022-03-01 13:02:38 -05:00
Marc Durdin
e9baffb50e chore(android): Merge branch 'master' into feat/android/android-web-test-harness 2022-03-01 08:10:12 +11:00
Keyman Build Agent
7faf71d1a8 auto: increment master version to 15.0.204 2022-02-26 13:02:45 -05:00
Marc Durdin
7273028192 chore(web): add unit test for selection and matching rule 2022-02-25 15:06:11 +11:00
Steven R. Loomis
3658efa5f1 chore(common): remove rust (for now!) 🦀
Fixes #6290
2022-02-24 17:34:23 -06:00
Keyman Build Agent
40df30749c auto: increment master version to 15.0.203 2022-02-24 13:02:56 -05:00
rc-swag
9eadbd6425
Merge pull request #6211 from keymanapp/fix/core/6204/capslock-key-state-ignored
fix(common/core/desktop): Add num and scroll lock mask to VKeyToChar
2022-02-24 17:46:57 +10:00
Marc Durdin
bf2270aa69 chore(web): add smp tests for text selection 2022-02-24 15:59:16 +11:00
Marc Durdin
9b84af8a2f fix(web): add unit tests for selection
This adds a set of unit tests for the TextArea element, initially, to
verify that selection and context are working as expected.
2022-02-24 11:25:21 +11:00
Marc Durdin
cacbbee5cc fix(web): properly handle selection
Relates to #5853 and others.

Selection management was not working properly with the various
OutputTargets:

1. When there is a non-empty selection, rules have no context -- it's
   like new text.
2. Backspace over a selection deletes just the selection.
3. Typing a character replaces the selection, of course, and collapses
   the caret to the end of the new text.
4. `hasSelection` is a very strange name for `OutputTarget` descendants.
   It doesn't mean "has an active selection" but rather, kinda means
   "supports selection internally".
5. Added `isSelectionEmpty` which is used for some of the new selection
   rules above.

Note that the `touchAlias` OutputTarget class does not currently support
selection. I hope we can deprecate `touchAlias` with the use of
`inputMode` (#3030) in the future, rather than adding support for
selection.
2022-02-23 15:12:58 +11:00
Marc Durdin
addcad9f76 fix(web): further selection tweaks to mocks 2022-02-23 15:12:23 +11:00
Marc Durdin
ac2cc93f2a fix(web): add readonly mode for rule behavior finalization
Relates to #5853.

Two things happened here:

1. Construction of Mocks made an assumption that the selection should
   always be deleted (outputTarget.ts:363). However, for NewContext and
   PostKeystroke processes, we don't want to change anything.

2. Even if nothing is changed, the transcription would emit what is
   in theory a no-op ruleTransform (insert="", deleteLeft=0,
   deleteRight=0). But apps would treat this as deleting the selection.

This fix goes a little broader than I would have preferred, but adds a
readonly mode to the transcription and mock model, so that we can
control explicitly when changes are applied to the text store.
2022-02-22 10:42:20 +11:00
Marc Durdin
6cd0f5d49a chore: add web_context_tests keyboard 2022-02-22 10:41:42 +11:00
Keyman Build Agent
de8a1fe220 auto: increment master version to 15.0.202 2022-02-21 13:02:21 -05:00
Marc Durdin
757b6a3e09
Merge pull request #6259 from keymanapp/fix/developer/6209-npm-publish-alpha-to-stable
fix(developer): npm publish with correct tier
2022-02-21 06:25:02 +07:00
Keyman Build Agent
149fba62b6 auto: increment master version to 15.0.201 2022-02-20 13:02:45 -05:00
Keyman Build Agent
10e7e4a4c4 auto: increment master version to 15.0.200 2022-02-18 13:13:14 -05:00
Keyman Build Agent
93c19d9adb auto: increment master version to 15.0.199 2022-02-13 13:02:58 -05:00
Marc Durdin
3a3736abaa fix(developer): npm publish with correct tier
Fixes #6209.

Regression introduced in #6073. Cleanup of tier information in these
build scripts accidentally also deleted the setup of npm_dist_tag
variable.
2022-02-13 14:18:42 +07:00
Keyman Build Agent
a1e1ab86c0 auto: increment master version to 15.0.198 2022-02-12 13:03:29 -05:00
Keyman Build Agent
be12166f49 auto: increment master version to 15.0.197 2022-02-11 13:02:23 -05:00
Ross
1d2584bc64 fix(common): mask modifiers in process event call
Ensure that when calling the common core process_event call that the
modifiers variable only includes the Bits the core supports
2022-02-11 16:25:58 +10:00
Ross
cd48948e08 fix: update code comments to match change 2022-02-11 16:24:54 +10:00
Ross
2b99aa7f0c fix: add num and scroll lock mask to VKeyToChar 2022-02-11 16:24:41 +10:00
Keyman Build Agent
dd1fbe1cac auto: increment master version to 15.0.196 2022-02-09 13:02:42 -05:00
Keyman Build Agent
6eaf6487d1 auto: increment master version to 15.0.195 2022-02-08 13:02:53 -05:00
Keyman Build Agent
d177fb3902 auto: increment master version to 15.0.194 2022-02-07 13:02:51 -05:00
Keyman Build Agent
9d12fae415 auto: increment master version to 15.0.193 2022-02-04 13:02:21 -05:00
Keyman Build Agent
c8e00045fb auto: increment master version to 15.0.192 2022-02-03 13:02:38 -05:00
Keyman Build Agent
fbd9a0d6fa auto: increment master version to 15.0.191 2022-02-02 13:02:14 -05:00
Keyman Build Agent
755be48876 auto: increment master version to 15.0.190 2022-02-01 13:02:30 -05:00
Keyman Build Agent
3ea411280a auto: increment master version to 15.0.189 2022-01-28 13:03:59 -05:00
Marc Durdin
b428a8ab97 chore(developer): Merge branch 'master' into feat/developer/node-based-debugger-server 2022-01-28 16:07:19 +11:00
Keyman Build Agent
ec3cfc3941 auto: increment master version to 15.0.188 2022-01-27 13:02:51 -05:00
rc-swag
229ba429c2
Merge pull request #5936 from keymanapp/feat/windows/imx-support-common-core
feat(windows): Keyman Core Integration - Support for IMX DLLs 🥑
2022-01-27 09:38:33 +10:00
Keyman Build Agent
a3b59448de auto: increment master version to 15.0.187 2022-01-26 13:01:27 -05:00
Keyman Build Agent
e4694fe298 auto: increment master version to 15.0.186 2022-01-25 13:02:21 -05:00