Commit graph

48 commits

Author SHA1 Message Date
jahorton
1ebfe28abd change(web): removes now-redundant SMP enablements 2021-04-22 11:54:16 +07:00
jahorton
11826f94aa change(web): SMP processing now always enabled 2021-04-22 11:54:16 +07:00
jahorton
8709f442e2 change(web): SMP enablement always on in embedded mode 2021-04-22 11:54:15 +07:00
Marc Durdin
34568b3e8e fix(web): toolbar and loading optimisations
There are a number of changes here to improve the performance of
KeymanWeb and the toolbar and reduce unnecessary requests:

1. (kmwbase.ts and kmwkeyboards.ts) Added option `setActiveOnRegister`,
   default `'true'`; if set to `'false'` then will never attempt to
   activate the first registered keyboard. Note that this property is a
   string because the `options` object currently supports only string
   types, which is not ideal, but out of scope for this PR.

2. (kmwuitoolbar.ts) fixed issue with toolbar not matching correctly on
   full BCP 47 code (line 960) after keyboard change notification.

3. (kmwuitoolbar.ts) fixed issue with toolbar not showing active
   keyboard if the keyboard is activated before init is complete
   (see `ui.lastSelectedKeyboard` references).

4. (kmwuitoolbar.ts) avoided re-entrancy for `ui.changeKeyboardEvent`
   by ensuring that `ui.selectKeyboard` does not attempt to set the
   active keyboard again for keymanweb; note that this was being caught
   by the event dispatcher in keymanweb but it was still not ideal.

5. (kmwuitoolbar.ts) with above changes, able to remove appalling two
   second timeout on load (yay!)

These changes will be useful immediately with keymanweb.com.
2021-01-21 12:07:15 +11:00
jahorton
89da78acf0 fix(web/engine): proactive prevention for swapped keyboards 2020-11-20 10:53:32 +07:00
jahorton
0eec1dd5fd change(web): addresses PR review comments (#3122) 2020-05-15 15:50:36 +07:00
jahorton
164bdfbd33 feat(web): uses keyboard error code for testing, new-code reorg 2020-05-13 12:10:29 +07:00
jahorton
373196dded change(web/engine): splits off the core/web/keyboard-processor module 2020-04-24 13:45:04 +07:00
jahorton
9f9f2774cd refactor(web/engine): drops OSK pre-req for 'alternate' computation 2020-04-08 14:59:07 +07:00
jahorton
5140642005 change(web/engine): general cleanup 2020-04-08 14:37:55 +07:00
jahorton
d7870f07d9 refactor(web/engine): better KeyEvent preanalysis 2020-04-08 14:31:27 +07:00
jahorton
a06dc6e894 refactor(web/engine): popup-key adjustments, key.id null check 2020-04-08 09:16:52 +07:00
jahorton
e447a5a1da refactor(web/engine): fully centralizes keyEvent generation on key spec 2020-04-07 17:28:36 +07:00
jahorton
11da216cf3 refactor(web/engine): starts keyEvent generation on key spec object 2020-04-07 16:30:15 +07:00
jahorton
6779cca412 chore(web/engine): Merge branch 'refactor/web/engine/processor-split' into refactor/web/engine/headless-inner-core 2020-04-06 13:21:24 +07:00
jahorton
7a04baa9a5 change(web/engine): kbdProcessor.core => core.keyboardProcessor 2020-04-06 13:17:32 +07:00
jahorton
57b7a0b3b0 refactor(web/engine): adds build-inner-core.sh, successful compilation 2020-04-03 15:47:21 +07:00
jahorton
227062ba56 refactor(web/engine): InputProcessor/KeyboardProcessor split 2020-04-03 10:50:58 +07:00
jahorton
11c1ed5bf2 refactor(web/engine): embedded adjustments, defaultOutput split 2020-04-03 10:08:03 +07:00
jahorton
75886e1755 fix(web/engine): null check for chirality layouts 2020-04-03 08:09:14 +07:00
jahorton
09454956e9 fix(web/engine): default layout fix for chiral keyboards 2020-04-02 13:48:48 +07:00
jahorton
2d8e676b47 fix(web): a more thorough layout state caching, fixes embedded 2020-03-30 11:54:23 +07:00
jahorton
d73390c635 fix(web/engine): missing init for layouts cache on else 2020-03-30 09:56:42 +07:00
jahorton
aa04261e4e feat(web/engine): Keyboard layout caching, cache checks 2020-03-30 08:54:53 +07:00
jahorton
96cb09c0d0 fix(web/engine): 'hollow' mode no longer required for Processor 2020-03-27 23:52:39 +07:00
jahorton
86cc033368 refactor(web/engine): supports 'hollow' Keyboards 2020-03-27 23:40:45 +07:00
jahorton
34dbcc36af refactor(web/engine): OSK construction uses Keyboard.layout 2020-03-27 23:00:15 +07:00
jahorton
cd98ab3fd4 refactor(web/engine): start of Keyboard wrapper layout property 2020-03-27 22:27:11 +07:00
jahorton
2b3545e269 refactor(web/engine): Keyboard.emulatesAltGr property 2020-03-27 17:40:03 +07:00
jahorton
98ea5ee95f refactor(web/engine): Removes osk.OSKSubKey ref from default layouts 2020-03-27 17:40:03 +07:00
jahorton
c03829ffce refactor(web/engine): moves layout classes to keyboards namespace 2020-03-27 17:40:03 +07:00
jahorton
15e8079430 refactor(web/engine): A few more device-use spots 2020-03-27 08:34:02 +07:00
jahorton
23f3f6c0e2 docs(web): extra doc location 2020-03-24 13:17:02 +07:00
jahorton
39eb9bfabc feat(web): Adds 'force' parameter to removeKeyboards for unit test use 2020-03-24 12:51:00 +07:00
jahorton
1d0e930485 refactor(web/engine): relocates keyboard tag code, adds typing 2020-03-24 10:06:10 +07:00
jahorton
ac179ead84 chore(web/engine): Merge branch 'refactor/web/engine/keyboard-wrapper' into refactor/web/engine/keyboard-wrapper-2 2020-03-24 08:20:35 +07:00
jahorton
b5f37dd699 fix(web/engine): Addresses PR comments 2020-03-23 12:42:11 +07:00
jahorton
8900c06545 refactor(web/engine): Adds keyboard help properties 2020-03-23 12:28:09 +07:00
jahorton
c0fab31fc9 refactor(web/engine): notify() -> keyboard, embedded refresh -> Processor 2020-03-21 22:25:47 +07:00
jahorton
b3b6bea5d7 refactor(web/engine): moves font(), desktop layout check 2020-03-21 22:25:33 +07:00
jahorton
69b309104a refactor(web/engine): moves CJK, RTL, chiral checks to Keyboard wrapper 2020-03-21 21:40:40 +07:00
jahorton
8c21c65070 refactor(web/engine): Keyboard's gs() as member function 2020-03-21 15:25:41 +07:00
jahorton
c74d7800a4 refactor(web/engine): more properties 2020-03-21 15:18:56 +07:00
jahorton
b62bf5ca10 refactor(web/engine): OSK-spec related Keyboard properties 2020-03-21 15:06:52 +07:00
jahorton
a3c9c9b156 refactor(web/engine): KN -> .name, KDU -> .displaysUnderlyingKeys 2020-03-21 14:55:45 +07:00
jahorton
712915e318 refactor(web/engine): .scriptObject['KI'] -> .id property 2020-03-21 14:37:36 +07:00
jahorton
e6788e2ad9 refactor(web/engine): wraps active keyboard 2020-03-21 14:30:33 +07:00
jahorton
e1bc6cfdd0 refactor(web/engine): starts com.keyman.keyboards TS namespace 2020-03-21 13:41:52 +07:00