Commit graph

3253 commits

Author SHA1 Message Date
Darcy Wong
a82df0e0ea fix(web): Add additional checks on className.indexOf 2022-11-09 12:48: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
08ef07750d fix(web): Handle undefined keyId in multi-tap
Fixes #7647.
2022-11-08 14:44:54 +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
Marc Durdin
1fdc5a0be4 feat(web): Custom layer targets for Shift double-tap
Applies proposed feature https://community.software.sil.org/t/testing-caps-on-touch/6849/5:

1. A `caps` layer must still exist in the keyboard.
2. If there is at least one multitap subkey defined on the Shift key on
   the active layer, then the `nextlayer` property of the first multitap
   subkey for the Shift key will be used instead of the default `caps`.
3. This does not change the behavior of the Shift key otherwise.

For example, the following defines a valid multitap key on Shift on the
`rightalt` layer to switch to a custom extended `rightalt-shift-caps`
layer.

This does not implement any other multitap functionality. It just allows
the keyboard developer to specify a target layer for a given double-tap.

```
  {
    "id": "K_SHIFT",
    "text": "*Shift*",
    "width": 150,
    "sp": 1,
    "nextlayer": "rightalt-shift",
    "layer": "default",
    "multitap": [
      {
        "text": "",
        "id": "T_new_694",
        "sp": "1",
        "nextlayer": "rightalt-shift-caps"
      }
    ]
  },
```
2022-11-03 10:35:44 +11:00
Marc Durdin
b676cc1d9a
Merge pull request #7563 from keymanapp/fix/ios/7517-iPad-not-recognised-as-tablet
fix(ios): iPad was not recognised as tablet device
2022-11-01 05:38:10 +11:00
Joshua Horton
9d006a45a7
Merge pull request #7516 from keymanapp/fix/web/bulk-renderer-update
fix(web): bulk renderer update
2022-10-31 14:59:59 +07:00
Joshua A. Horton
797d5b5a8f chore(web): cleanup, tweaks per code review 2022-10-31 10:25:16 +07:00
Marc Durdin
71af6160db fix(ios): iPad was not recognised as tablet device
Fixes #7517.

Cleans up the setDeviceType code which was attempting to set the device
type far too late in the init sequence, and moves responsibility for
detection from kmwembedded.ts to ios-host.ts, as this device test is
iOS-specific.
2022-10-28 13:02:19 +11:00
Joshua Horton
1bdb2d4364
Merge pull request #7557 from keymanapp/fix/web/model-id-case-insensitivity
fix(web): model language ids now case-insensitive
2022-10-28 08:17:40 +07:00
Joshua A. Horton
50cfdc7072 fix(web): model language ids now case-insensitive 2022-10-27 12:30:56 +07: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 Horton
31ce257f9d
Merge pull request #7544 from keymanapp/fix/web/isChiral-string-param
fix(web): allow `isChiral()` to accept string name parameter of keyboard
2022-10-26 14:13:44 +07:00
Joshua A. Horton
717e6fd472 fix(web): isChiral(<string>) 2022-10-26 11:11:45 +07:00
Joshua Horton
b097c351e1
Merge pull request #7463 from keymanapp/chore/web/engine-tools-build-rework
chore(web): KMW dev-tools reorganization, cleanup, script updates 📜
2022-10-26 10:17:01 +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 Horton
99da9a7785
Merge pull request #7486 from keymanapp/feat/web/kbd-layout-numeric-props
feat(web): keyboard layout spec now allows numeric width, pad, sp
2022-10-26 09:09:13 +07:00
Joshua A. Horton
7eb34bdbda docs(web): missing bulk-renderer doc detail 2022-10-24 15:48:33 +07:00
Joshua A. Horton
0833f3be21 fix(web): bulk renderer update 2022-10-24 15:40:30 +07:00
Joshua Horton
8a6120428a
Merge pull request #7488 from keymanapp/fix/web/lang-menu-index-scroll
fix(web): touch-platform language menu initial scrolling + index scrolling
2022-10-24 08:02:33 +07:00
Joshua A. Horton
4e3dd8fc13 feat(web): adds a test page 2022-10-20 11:05:36 +07:00
Joshua A. Horton
d74303bc5d fix(web): .display, not .visibility 2022-10-20 11:04:24 +07:00
Joshua A. Horton
a7e01f9172 change(web): titlebar configEnabled, helpEnabled 2022-10-20 10:12:21 +07:00
Joshua A. Horton
9301626dd2 chore(web): Revert "chore(web): removes CSS related to prior commit"
This reverts commit 9e1cc734b7.
2022-10-20 09:51:02 +07:00
Joshua A. Horton
e91cc809a7 chore(web): Revert "change(web): removes dead help, config top-right OSK icons"
This reverts commit c0cc360297.
2022-10-20 09:50:33 +07:00
Joshua A. Horton
4e609a258f chore(web): minor review nit 2022-10-20 08:48:19 +07:00
Joshua A. Horton
065a156621 fix(web): lang menu init default position 2022-10-19 15:17:24 +07:00
Joshua A. Horton
22f8011acf fix(web): touch language-menu scrolling via index 2022-10-19 14:58:31 +07:00
Joshua A. Horton
527aaa6618 feat(web): keyboard layout now allows numeric width, pad, sp 2022-10-19 10:27:38 +07:00
Joshua A. Horton
9e1cc734b7 chore(web): removes CSS related to prior commit 2022-10-19 08:29:55 +07:00
Joshua A. Horton
c0cc360297 change(web): removes dead help, config top-right OSK icons 2022-10-19 08:25:47 +07:00
Joshua A. Horton
459e8d8d1c chore(web): post-review tweaks 2022-10-18 12:36:06 +07:00
Joshua A. Horton
50bc5c5645 fix(web): forgot partial-change test.sh commit 2022-10-17 13:07:44 +07:00
Joshua A. Horton
8f84e01bc8 chore(web): removes merged script 2022-10-17 10:49:57 +07:00
Joshua A. Horton
382efd900e chore(web): reworks web project dev tool builds 2022-10-17 10:44:03 +07:00
Joshua A. Horton
1a674cb9b6 chore(web): dev_resources cleanup 2022-10-17 10:44:02 +07:00
Joshua Horton
c690ed727a
Merge pull request #7395 from keymanapp/fix/web/touch-inputmode-preservation
fix(web): better element inputmode management 📴
2022-10-17 10:19:12 +07:00
Joshua Horton
690a282fe3
Merge pull request #7360 from keymanapp/change/web/drop-alignInputs
chore(web): drops alignInputs, hideInputs 📴
2022-10-17 10:19:05 +07:00
Joshua Horton
66f9c520f7
Merge pull request #7343 from keymanapp/change/web/drop-touch-aliases
change(web): now utilizes 'inputMode="none"' on supported touch devices 📴
2022-10-17 10:18:58 +07:00
Joshua A. Horton
15e4e3745c chore(web): PR cleanup per review 2022-10-17 08:28:46 +07:00
Joshua A. Horton
f80fec1280 fix(web): must attach before saving inputmode 2022-10-14 10:58:30 +07:00
Marc Durdin
94c46c41c6
Merge pull request #7438 from keymanapp/feat/common/builder-dependencies
feat(common): builder dependency support
2022-10-13 13:29:50 +11:00
Marc Durdin
a1a1ab9c6b
Merge pull request #7392 from keymanapp/chore/web/more-script-updates
chore(common/models, web): more script updates
2022-10-13 13:29:42 +11:00
Marc Durdin
435aade36e chore(web): add keyboard-processor test to top-level web test script 2022-10-13 12:39:30 +11:00
Joshua A. Horton
773a619ccf chore(web): null catches on observer toggle methods 2022-10-10 14:15:54 +07:00
Joshua A. Horton
ce6c05a2fb fix(web): inputMode masking on control enablement, not just attachment 2022-10-10 09:54:48 +07:00
Joshua A. Horton
068869c431 feat(web): enables text-selection unit tests for mobile 2022-10-10 09:11:20 +07:00
Joshua A. Horton
f8438d2117 chore(web): Merge branch 'master' into change/web/drop-touch-aliases 2022-10-10 09:04:24 +07:00
Joshua Horton
9e2fcde7a2
Merge pull request #7381 from keymanapp/chore/web/unit-test-polish-pass
chore(web): unit test polishing pass
2022-10-10 09:01:45 +07:00
Joshua Horton
d979cd1ee7
Merge pull request #7359 from keymanapp/fix/web/contextEditable-undefined-select
fix(web): possible error on change of context to a contextEditable
2022-10-10 08:59:41 +07:00