Commit graph

2140 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
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 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
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
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 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
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
f8438d2117 chore(web): Merge branch 'master' into change/web/drop-touch-aliases 2022-10-10 09:04:24 +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
Joshua A. Horton
5acb8f2ec1 fix(web): touch-drag selection 2022-10-07 09:10:30 +07:00
Joshua A. Horton
6dec90c868 chore(web): and another 2022-10-07 08:57:01 +07:00
Joshua A. Horton
c60f2f5d4e chore(web): more dead code cleanup 2022-10-07 08:56:29 +07:00
Joshua A. Horton
089077d86d chore(web): minor cleanup 2022-10-04 12:52:00 +07:00
Joshua A. Horton
482e743313 feat(web): adds mutationobserver to detect inputmode change, stores setting 2022-10-04 12:44:24 +07:00
Joshua A. Horton
d9cd488923 chore(web): Merge branch 'change/web/drop-touch-aliases' into change/web/drop-alignInputs 2022-10-04 12:43:09 +07:00
Joshua A. Horton
37f50e1b34 fix(web): element detachment on touch devices 2022-10-04 12:33:13 +07:00
Joshua A. Horton
a5c8293d27 chore(web): addresses some PR review concerns 2022-10-04 09:40:52 +07:00
Joshua A. Horton
871c50bb2b docs(web): re-documents a couple of vars (see #7387) 2022-09-30 12:46:57 +07:00
Joshua A. Horton
312b19c3ef chore(web): drops testString, checkFont* funcs 2022-09-30 11:49:03 +07:00
Darcy Wong
afba43b898 fix(web): Only unhighlight suggestion if there's a pending one 2022-09-29 13:33:42 +07:00
Joshua A. Horton
7de043021d fix(web): forgot to remove kmwembedded ref 2022-09-29 10:41:38 +07:00
Joshua Horton
a3dde68d52
Merge pull request #7345 from keymanapp/fix/common/web/mock-deadkey-handling
fix(common/web): mock deadkey handling after rules manipulating context 📴
2022-09-29 10:37:49 +07:00
Joshua A. Horton
d1887a50cd chore(web): drops alignInputs, hideInputs 2022-09-29 08:52:46 +07:00