Commit graph

81 commits

Author SHA1 Message Date
Marc Durdin
92ed99c4d6 chore(common): build script performance improvements
Improves build script performance by:
* using built-ins wherever possible (e.g. string splitting)
* eliminating redundant code
* using absolute (to $KEYMAN_ROOT) rather than relative paths to avoid realpath
* removing unnecessary `npm run` calls

BEFORE                         | AFTER
-------------------------------|----------------------
time ./core/build.sh --help    |
real    0m2.116s               | real    0m0.874s
user    0m0.578s               | user    0m0.198s
sys     0m0.984s               | sys     0m0.289s
-------------------------------|----------------------
time ./web/build.sh --help     |
real    0m3.523s               | real    0m0.757s
user    0m1.166s               | user    0m0.320s
sys     0m2.273s               | sys     0m0.455s
-------------------------------|----------------------
time ./web/build.sh -d         |
real    1m34.750s              | real    0m59.974s
user    0m9.721s               | user    0m6.284s
sys     0m19.652s              | sys     0m13.202s

@keymanapp-test-bot skip
2023-03-13 07:18:09 +07:00
Marc Durdin
ce864ea923 chore: update standard script prolog to use builtin instead of dirname 2023-02-22 11:04:15 +07:00
Marc Durdin
463c7ff907 chore: remove greadlink from standard script prolog 2023-02-22 10:43:06 +07:00
Marc Durdin
a004978863 chore: use builder_heading, remove echo_heading 2023-02-20 09:17:51 +07:00
Joshua A. Horton
889d347c02 chore(common): Merge branch 'master' into chore/common/js-ts-dependency-updates 2023-02-16 13:51:31 +07:00
Joshua A. Horton
a3752dd9ff chore(common): full-repo ts-node update 2023-02-09 12:39:15 +07:00
Marc Durdin
4598f13ba8 chore(common): automatically apply _builder_check_color 2023-02-09 12:12:18 +07:00
Joshua A. Horton
878e0f0ea2 chore(common): updates typescript to 4.9.5 2023-02-09 08:40:52 +07:00
Marc Durdin
983ae43357 chore(common): add builder_term function 2023-02-08 12:49:54 +07:00
Joshua Horton
71e12a7ced
chore(web): Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-11-21 08:26:48 +07:00
Joshua A. Horton
84d5b00bf1 fix(web): osk key text scaling 2022-11-17 15:16:56 +07:00
Marc Durdin
d7fbdfc59a
Merge pull request #7617 from keymanapp/fix/developer/7616-inferred-key-text-stability
fix(developer): improve support for inferred key cap text
2022-11-09 05:14:44 +11:00
Marc Durdin
88e5bb8cdd fix(web): doModifierPress was testing against wrong device
The doModifierPress function was testing against the 'actual' device
rather than the virtual device, which meant that in the web debugger on
a desktop, testing a touch device, it was effectively testing against
the desktop device data rather than the simulated touch device data.

I did not observe any significant differences in behaviour between the
two modes. So I am not 100% confident that this change is necessary. But
it is a little concerning that there was a mismatch here.
2022-11-07 07:01:50 +11:00
Marc Durdin
238a8e9185 fix(developer): improve support for inferred key cap text
Fixes #7616.

Fixes a crash when attempting to infer key cap text from key id, and
cleans up the support for inferred key text so that it works correctly
in the designer.

Also adds a safeguard to KMW to stop invalid key ids causing a crash.
2022-11-04 06:18:24 +11:00
Joshua Horton
a060ccb6fd
Merge pull request #7543 from keymanapp/fix/web/oskEvent-keyboard-synch
fix(web): ensures keyboard does not change underneath OSK keystroke
2022-10-26 14:13:54 +07:00
Joshua A. Horton
c3e3fb04d5 fix(web): ensures keyboard does not change underneath OSK keystroke 2022-10-26 09:45:26 +07:00
Joshua A. Horton
042daf7fdc fix(web): failsafe button-class val on failed string parse 2022-10-21 10:40:29 +07:00
Joshua A. Horton
3704e71818 refactor(web): layout 'sanitize' methods 2022-10-20 09:32:35 +07:00
Joshua A. Horton
ecc9edeb66 change(web): layout row id number coercion 2022-10-20 08:54:19 +07:00
Joshua A. Horton
7ddadbe145 chore(web): padpc, widthpc cleanup 2022-10-20 08:47:59 +07:00
Joshua A. Horton
527aaa6618 feat(web): keyboard layout now allows numeric width, pad, sp 2022-10-19 10:27:38 +07:00
Marc Durdin
1cecb87f7f feat(common): builder dependency support 2022-10-12 12:50:26 +11:00
Joshua A. Horton
cf1088027b fix(common/web): mocks did not update deadkey positions on context manipulation 2022-09-22 08:57:45 +07:00
Marc Durdin
a3129adedc refactor(common): rename builder_has_action and document
* `builder_has_action` renamed to `builder_start_action`
* `builder_report` renamed to `builder_finish_action`
* `builder_has_action` created to be a silent test for the action
* Added reasonably comprehensive documentation.
2022-09-21 10:21:35 +10:00
Joshua A. Horton
12ac0df573 chore(common): low-hanging requested changes 2022-09-20 12:07:14 +07:00
Joshua A. Horton
ccf2919bb4 feat(web): report-scoping no longer option; is perma-on 2022-09-20 10:56:01 +07:00
Joshua A. Horton
2f639ecc9c feat(common): builder report scoping option 2022-09-20 10:10:51 +07:00
Joshua A. Horton
2bea392baa feat(common): builder_-managed failure-trap 2022-09-20 09:23:38 +07:00
Joshua A. Horton
29e24493bc fix(common): color option needed for builder_describe 2022-09-20 08:52:12 +07:00
Joshua A. Horton
4399548df0 feat(common): DESCRIBE_TERM_START, _END 2022-09-20 08:30:33 +07:00
Joshua A. Horton
18c5fae23b chore(common/web): simple tweaks for PR review 2022-09-20 08:21:22 +07:00
Joshua A. Horton
ac5c7d71c3 fix(common/web): shell script chmod +x 2022-09-19 14:24:43 +07:00
Joshua A. Horton
d5f11f4555 chore(web): Merge branch 'master' into refactor/web/low-level-build-scripts 2022-09-19 14:22:51 +07:00
Marc Durdin
5da24ff279
Merge pull request #7307 from keymanapp/dependabot/npm_and_yarn/nanoid-and-mocha--removed
chore(deps): bump nanoid and mocha
2022-09-19 15:34:19 +10:00
Joshua A. Horton
24092511bb refactor(web): reworks low-level module build scripts 2022-09-19 12:04:14 +07:00
dependabot[bot]
93ec6106e1
chore(deps): bump nanoid and mocha
Bumps [nanoid](https://github.com/ai/nanoid) and [mocha](https://github.com/mochajs/mocha). These dependencies needed to be updated together.

Removes `nanoid`

Updates `mocha` from 8.4.0 to 10.0.0
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v8.4.0...v10.0.0)

---
updated-dependencies:
- dependency-name: nanoid
  dependency-type: indirect
- dependency-name: mocha
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-16 21:06:23 +00:00
Joshua A. Horton
5cd48a5784 fix(web): new key prop needs enumerable 2022-09-12 11:05:27 +07:00
Joshua A. Horton
d91132bc0f fix(web): filters more non-output keys from fat-finger distrib 2022-09-12 10:39:41 +07:00
Joshua A. Horton
b8dd9baf5b chore(web): minor cleanup 2022-09-12 10:38:55 +07:00
Joshua A. Horton
c05df0e323 fix(web): fixes final-key-of-row dist mapping, drops arbitrary prob adjustment for best key 2022-09-12 10:38:55 +07:00
Joshua A. Horton
6e000d1074 change(web): better touch-distrib weighting 2022-09-12 10:38:54 +07:00
Marc Durdin
e30871f01e chore(linux): add common/include to further paths 2022-08-11 14:56:46 +02: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
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
7342f7f9e6 fix(web): applies PR suggestions 2022-07-12 11:01:14 +07:00
Joshua Horton
be7c9c58a9
Merge pull request #6808 from keymanapp/fix/web/6792-chiral-modifier-mapping
fix(web): maps touch-layout chiral alt, ctrl to non-chiral when non-chiral keyboard is active
2022-07-11 08:12:46 +07:00
Marc Durdin
ace0cbd1d6 fix(web): ncaps rules not matching on touch
Fixes #6910.

Regression introduced in #6874 / #6849 (which themselves were improving
the Caps Lock situation).

Ensures that either `NO_CAPS` or `CAPS` is always set in the modifier
flags.
2022-07-08 16:09:28 +10:00
jahorton
648acc9273 chore(web): extra check for robustness 2022-07-08 10:14:35 +07:00