Commit graph

4628 commits

Author SHA1 Message Date
Joshua Horton
bdfdb42208 Merge branch 'master' into web-103-registration-stub-decouple 2017-10-16 09:49:12 +07:00
Joshua Horton
468ce7d1f6 web: history.md 2017-10-13 09:57:12 +07:00
Joshua Horton
a7b33dade9 history.md. 2017-10-13 09:10:11 +07:00
Joshua Horton
453e5d56b9 Centralizes the layer-change operation of the OSK; fixes the regression mentioned in #358. 2017-10-13 09:07:55 +07:00
Joshua Horton
1d1a8fe928 Fixes the remaining tavultesoft.keymanweb reference in the samples pages. 2017-10-13 08:03:21 +07:00
Joshua Horton
8ba75693f3 Merge pull request #354 from keymanapp/web-352-autoattach-fix
Corrects KMW auto-attach behavior.
2017-10-12 18:04:51 +07:00
darcywong00
cdd75ccf5f Refactor longpress logic so key text is not confused with key code
A tchad keyboard has a diacritic rule that converts `=` (U_003D) into a combining macron (U_0304).
A longpress on `»` (U_00BB) was inadvertently triggering the diacritic rule, and outputting the macron.

The longpress code in KMEA and KMW needs to be refactored so they dont confuse key text (U_00BB is decimal 187) with underlying keyCodes (`=` is keyCode 187).

- fix KMW executePopupKey so key code is dictionary lookup instead of parsing the keyID.
- clean up JS call to executePopupKey since it only uses the keyID
2017-10-12 14:21:29 +07:00
Joshua Horton
9ca227626d Refactors the samples and testing pages appropriately to the new namespace. With a little housekeeping and bug fixes related to work on this issue. 2017-10-12 09:49:39 +07:00
Joshua Horton
afd515901e Major refactor - base object name has been changed to keyman. 2017-10-12 09:03:28 +07:00
Joshua Horton
2180ca5206 Heavily refactored and reformatted the 'callbacks'/interface. 2017-10-12 09:03:28 +07:00
Joshua Horton
a791d024eb Initial refactor: KeymanWeb now distinct from tavultesoft.keymanweb. Functions properly. 2017-10-12 09:03:27 +07:00
Joshua Horton
5c1247fdc5 Adjusts Readme.md to match the new layout. 2017-10-11 16:04:52 +07:00
Joshua Horton
1fd7dd21c9 Oh yeah, history.md. 2017-10-11 15:55:04 +07:00
Joshua Horton
9d748bf17c Fixes a bug in _GetDocumentEditables. 2017-10-11 15:53:48 +07:00
Joshua Horton
61de8ffe3e Refactored the samples section to create a separate testing section. 2017-10-11 15:31:06 +07:00
Joshua Horton
b24e29390a Fixed super-shorthand variable name.
As per PR review.  No longer super-short, but it's more informative now.
2017-10-10 11:22:08 +07:00
darcywong00
f06c727e51 Refactor longpress text when it's generated by Id
Currently on the touch layout, longpress for K_SPACE causes the app to crash because it is attempting to parse `K_SPACE` as an int for generating the longpress text.

- Clean up when key text is empty how it is parsed from Id
-Change Unicode hex string delimiter from `,0x` to `\\u` which makes it easier to read `executePopupKey()` in the logs.
2017-10-09 09:04:30 +07:00
Joshua Horton
00db5382e8 Added #103-related history documentation. 2017-10-06 13:37:51 +07:00
Joshua Horton
5245a556ec Fixed new work for Closure. 2017-10-06 13:06:16 +07:00
Joshua Horton
b01ee5542f Reworks the default keyboard selection that occurs on KMW initialization to be better specialized for each of the embedded and native control paths. 2017-10-06 13:04:00 +07:00
Joshua Horton
0214cb3690 Function reformatting. 2017-10-06 10:51:23 +07:00
Joshua Horton
602edbe11b Addresses point 1 of #103 - prevents duplicate requests for identical keyboard-language pairings. 2017-10-06 10:44:31 +07:00
Joshua Horton
16048e5573 setIsChiral() is now operational. 2017-10-04 10:33:16 +07:00
darcywong00
f9f3dc7449 Document bitmasks and undo getActiveKeyboard refactor
* Document shift states and lock states in kmembedded.js, and standardize `lstates` parameter name
* Leave getActiveKeyboard() refactor as a TODO
2017-10-04 10:33:16 +07:00
darcywong00
f9066a5926 Start adding chirality modifiers to KMEA
This is follow-on to #300 for adding chirality modifiers to KMEA.

Add support for L/R Ctrl, Alt, caps lock, num lock, and scroll lock for external keyboard

- temporarily adding test chriality.js keyboard
2017-10-04 10:33:16 +07:00
Joshua Horton
d5cfe35927 Merge branch 'master' into web-9-modifier-chirality 2017-09-27 15:18:52 +07:00
Joshua Horton
8056351148 Some minor sample page refactoring & exposition on chirality.js. 2017-09-25 12:07:08 +07:00
Joshua Horton
5775f84269 Fixes up _KeyDown's original documentation comment. 2017-09-25 11:56:15 +07:00
Joshua Horton
e9a85cd2c4 Removed incomplete fix code that snuck in the prior commit. 2017-09-25 11:53:57 +07:00
Joshua Horton
d007a5a22b Undoes physical input support for touch devices while in native (not app-embedded) mode. 2017-09-25 11:50:24 +07:00
Joshua Horton
36b1aae2e8 Properly initializes the bitmask within KKM. 2017-09-25 08:43:32 +07:00
Joshua Horton
e61fa5673a Merge branch 'master' into web-9-modifier-chirality 2017-09-25 08:27:31 +07:00
Joshua Horton
0868ff93bf Adds previously-referenced html changes and adds an item to history.md regarding this fix. 2017-09-15 09:28:50 +07:00
Joshua Horton
4271c1a46f Fixes up the samples index and connectivity a bit and corrects the fix to not break the desktop OSK. 2017-09-15 08:40:46 +07:00
Joshua Horton
81e294fd6e Fleshed out the CAPS layer of the testing keyboard - all CAPS-affected keys now do special CAPS printouts to prove the layer differentiation. 2017-09-15 08:16:04 +07:00
Joshua Horton
eeed83f27e Initial fix for #116 - turns out that we had an unnecessary next layer check earlier than it needed to be. Removing that fixes the issue.
Main thing now:  fleshing out the testing keyboard to make the tests a little simpler.
2017-09-14 12:37:31 +07:00
Joshua Horton
9bd6739d1d Adds comments/disclaimers to the handwritten chirality.js. 2017-09-14 10:22:06 +07:00
Joshua Horton
7c9a3d6436 Undid Closure notation from added code where possible, enforced single-quotes for consistency/searchability, and polished chirality.js a bit. 2017-09-14 09:32:15 +07:00
Joshua Horton
18e08d2f87 Adds persistent tracking for state key activation, checks for any changes to the modfier state by simple integer comparison and updates OSK accordingly.
Removes `mousemove` based polling due to its potential performance overhead.
2017-09-12 09:46:37 +07:00
Joshua Horton
3d60004118 Patches up a Firefox bug with European layout AltGr presses and KMW OSK management. 2017-09-12 08:32:38 +07:00
Joshua Horton
b87dfe545e AltGr simulation is nearly ready, but has some issues with working properly on... actual European keyboards when the AltGr key is pressed. *sigh* 2017-09-12 08:32:38 +07:00
Joshua Horton
75f21e399c Fixes the handler-removal function name. 2017-09-12 08:32:38 +07:00
Joshua Horton
765ef90af6 Added code facilitating CAPS_LOCK OSK state management when KMW handling is out of focus.
Includes some commented-out prelim work on AltGr simulation... it's proving very tricky.
2017-09-12 08:32:38 +07:00
Joshua Horton
11bed888bc Incorporates most of the requested changes from @mcdurdin's recent PR review.
There's still a bit of work to do on supporting proper CAPS_LOCK state upon element refocusing, as with switching tabs.
2017-09-12 08:32:38 +07:00
Joshua Horton
5d86d1a3e9 Initial implementation of state key handling is now in place. The OSK version of state keys acts just like the OSK version of modifiers. Chiral keyboard now auto-caps all keys when CAPS LOCK is active. 2017-09-12 08:32:38 +07:00
Joshua Horton
c6e206e0fe Changed relevant nextlayer properties in kmwLayout to use kebab-case - AltGr was broken for mobile due to chirality changes. 2017-09-12 08:32:38 +07:00
Joshua Horton
b4cab07e22 Behold! Actual chiral output! Supported both by physical keystrokes and osk interaction.
Yet to do:  state keys, embedded integration.
2017-09-12 08:32:38 +07:00
Joshua Horton
79e8212e0e Enhanced documentation on osk.updateLayer. 2017-09-12 08:32:37 +07:00
Joshua Horton
71fe50048a Implements proper detection of the modifier state both from the OSK and the physical keyboard and also ensures that osk.clickKey operates as expected for existing keyboards. 2017-09-12 08:32:37 +07:00
Joshua Horton
8297ab36f5 Conversation with @mcdurdin - it's enough of an edge case that we'd rather save on file size. 2017-09-12 08:32:37 +07:00