Commit graph

5430 commits

Author SHA1 Message Date
Joshua A. Horton
6a8eb31dc6 change(web): TrackedPath class 2022-07-27 09:24:24 +07:00
Joshua A. Horton
b67eed9d5c feat(web): stronger event typing 2022-07-27 09:22:21 +07:00
Joshua A. Horton
a769306bd0 change(web): better EventEmitter declaration 2022-07-27 09:22:14 +07:00
Joshua A. Horton
70b2e2fec6 change(web): TrackedPoint docs, clearer JSON serialization 2022-07-27 09:21:42 +07:00
Joshua A. Horton
5caea32bad change(web): InputSequence -> TrackedPoint 2022-07-27 09:21:33 +07:00
Joshua A. Horton
fd39da0be9 change(web): _replacer -> toJSON 2022-07-27 09:19:30 +07:00
Marc Durdin
5895d26e64
Merge pull request #6884 from keymanapp/feat/developer/touch-layout-editor-flick-and-multitap
feat(developer): Rework Touch Layout Editor to support flick and multitap 🙊
2022-07-26 07:14:02 +10:00
Marc Durdin
ab54c0ecb9 chore(common): more bin bashes 2022-07-25 16:03:22 +10:00
Marc Durdin
767927bf16 chore(common): use /usr/bin/env bash
Fixes up scripts (except under /linux) to use `#!/usr/bin/env bash`
instead of `#!/bin/bash` or `#!/bin/sh` so that we don't end up with
the ancient version of bash supplied with macOS.

This became urgent with this PR, because of bash-4.xisms in
build-utils.sh, for example on line 572:

```
if [[ -v _builder_params[$e] ]]; then
```
2022-07-25 14:59:37 +10:00
Marc Durdin
93a03acb9f chore(common): builder script :target and --option support
Adds support for :target and --option to the builder_() functions in
build-utils.sh, along with a consistent way of describing command line
parameters in short-hand form, so we can avoid the display_usage getting
out of sync with actual command line parameters.

I opted to tweak the existing usage slightly, reversing parameter order
for `builder_report`, so that we could extend `builder_report` cleanly
to support targets.

The new builder_() functions are `builder_describe` and `builder_parse`,
which should be used in place for `builder_init` where you want to
provide more detailed command-line options (for many scripts, the
defaults provided through `builder_init` may suffice).

`builder_describe` lets you set a single-line description of the script,
along with a list of parameters: `actions`, `:targets` and `--options`.
Options may also specify a shorthand form, e.g. `--option,-o`. Each
parameter may optionally include a short description, separated by
space(s) from the parameter name.

build-utils.test.sh tests the functionality of the various functions,
and provides some examples of using them.

Defaults:
* If a target is not specified in `builder_describe`, a standard target
  of `:project` will be available.
* If the user does not pass an action on the command line, then `build`
  will be used.
* If the user does not pass a target on the command line, all targets
  will have the actions applied.

Note, it is possible to have targets which do not use all actions. These
may be still be specified, but can be ignored. For example, `test:tools`
may not be an action:target that you handle in the script. At this time,
the builder_() functions do not attempt to check for this.
2022-07-25 14:31:58 +10:00
Joshua A. Horton
f01a773194 fix(web): recorded input-coord alignment issue 2022-07-20 14:18:46 +07:00
Joshua A. Horton
6437475d4f chore(web): updates to match new commit on ancestor PR 2022-07-20 13:38:37 +07:00
Joshua A. Horton
f1e99340f7 chore(web): Merge branch 'feat/web/recognizer-input-unit-testing' into feat/web/recognizer-input-unit-testing-2 2022-07-20 13:27:46 +07:00
Joshua A. Horton
b7bf82cf9b feat(web): verifies unit-test synth events reach target 2022-07-20 13:27:35 +07:00
Joshua A. Horton
059adf53cc feat(web): unit test for initial touch in roaming zone 2022-07-20 12:42:54 +07:00
Joshua A. Horton
2d06ec3647 change(web): replaces sed, awk uses with node scripts 2022-07-20 11:32:22 +07:00
Joshua A. Horton
d6be5f831a fix(web): touchevent emulation in non-touch envs 2022-07-20 10:00:14 +07:00
Joshua A. Horton
42c43c48a2 feat(web): operational multitouch test 2022-07-19 15:31:03 +07:00
Joshua A. Horton
b2e9c830bf feat(web): unit tests 2022-07-19 15:15:30 +07:00
Joshua A. Horton
27fd6559a3 fix(web): recorder - sub-pixel alignment on scrolls 2022-07-19 14:55:06 +07:00
Joshua A. Horton
bacfe6d507 fix(web): identified sequence-repro issues 2022-07-19 14:49:31 +07:00
Joshua A. Horton
5cbe959bc0 fix(web): realign after changing config 2022-07-19 13:40:51 +07:00
Joshua A. Horton
4b9a992071 fix(web): mkdir -p use 2022-07-19 13:02:35 +07:00
Joshua A. Horton
71cb4fe1a7 fix(web): another executable flag 2022-07-19 12:08:01 +07:00
Joshua A. Horton
0694ca459b fix(web): executable flags 2022-07-19 11:16:44 +07:00
Joshua A. Horton
3763f3f546 fix(web): missing mkdir in tools/build.sh 2022-07-19 10:51:42 +07:00
Joshua A. Horton
9db4913331 feat(web): a fully-functional unit test 2022-07-19 10:45:00 +07:00
Joshua A. Horton
9e6d3c560f feat(web): first input-sequence playback 2022-07-19 10:44:06 +07:00
Joshua A. Horton
506905719a feat(web): more canary tests, partial read of recorded obj 2022-07-19 10:43:41 +07:00
Joshua A. Horton
261debdb83 feat(web): initial Karma setup for gesture-host browser testing 2022-07-19 10:43:09 +07:00
Joshua A. Horton
51d72ba416 change(web): backport of tweaks from child branch 2022-07-19 10:36:50 +07:00
Joshua A. Horton
ddac11b7ab fix(web): build-script - tools before test 2022-07-19 10:35:33 +07:00
Joshua A. Horton
902c63be36 fix(web): recorder page sub-pixel alignment issue 2022-07-19 10:35:11 +07:00
Joshua A. Horton
8c40e374d3 feat(web): better fixture extraction, css copy to build dir 2022-07-18 09:55:40 +07:00
Joshua A. Horton
ce0221b151 docs(web): adds a neat comment 2022-07-15 14:44:52 +07:00
Joshua A. Horton
49125fcf6e chore(web): removes invalid comments 2022-07-15 14:43:16 +07:00
Joshua A. Horton
e21e98b4cd feat(web): gesture recorder clears on device config change 2022-07-15 14:42:34 +07:00
Joshua A. Horton
988a7f9d39 feat(web): baseline recorder operational 2022-07-15 14:32:50 +07:00
Joshua Horton
71068abe9d
Merge pull request #6950 from keymanapp/chore/web/remove-invalid-warning
chore(web): remove invalid warning msg
2022-07-15 13:07:25 +07:00
Joshua A. Horton
8f0116f359 feat(web): toward the recorder page 2022-07-15 12:56:10 +07:00
Joshua Horton
b8fd5eea31
Merge pull request #6902 from keymanapp/fix/web/block-set-layer-on-desktop
fix(web): layer-setting ops should not trigger for hardware keystroke processing 🖇️
2022-07-15 11:07:19 +07:00
Joshua Horton
ed8c15fe6e
Merge pull request #6901 from keymanapp/fix/web/context-only-device
fix(web): postkeystroke processing should ignore key-event source🖇️
2022-07-15 11:06:39 +07:00
Joshua A. Horton
7689fb733f chore(web): more build-script tweakage 2022-07-15 11:05:00 +07:00
Joshua A. Horton
6e27b49ecf feat(web): adds fixture build-artifact 2022-07-15 10:57:47 +07:00
Joshua A. Horton
112bf8b4b1 feat(web): gesture-recognizer/src/tools build scripts 2022-07-15 10:50:13 +07:00
Joshua A. Horton
1ecafacc33 feat(web): start of test-recorder page 2022-07-15 09:59:56 +07:00
Joshua A. Horton
56b37fb87f chore(web): remove invalid warning msg 2022-07-15 08:53:08 +07:00
Joshua A. Horton
eb5d24d76c feat(web): starts recognizer unit-test-resources tool 2022-07-15 08:40:27 +07:00
Joshua A. Horton
5bb13a0b5a chore(web): merges updates to test fixture 2022-07-15 08:40:26 +07:00
Joshua A. Horton
10e3378e63 feat(web): extractable fixture matching host page 2022-07-15 08:40:25 +07:00