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
Joshua Horton
d29c531da7
Undoes the chirality constraints due to its effect on visual feedback.
2017-09-12 08:32:37 +07:00
Joshua Horton
afd43a4345
Fixes the potential layer generator to follow our planned chirality constraints.
2017-09-12 08:32:37 +07:00
Joshua Horton
c59ed4f511
Fixed up the bitflag constants and added a 'is chiral?' testing bitmask.
2017-09-12 08:32:37 +07:00
Joshua Horton
2014b68437
Developed an initial testing framework for the chirality changes, corrected default behavior of buildDefaultLayout when KLS lacks specifications for default layers.
2017-09-12 08:32:37 +07:00
Joshua Horton
621bdf0ce9
Further refactoring, documentation, and cleaning of osk.buildDefaultLayout.
2017-09-12 08:32:37 +07:00
Joshua Horton
684421f20a
Refactors out the key-102 handling into one of the new helper functions, aiding the readability of osk.buildDefaultLayout.
2017-09-12 08:32:37 +07:00
Joshua Horton
0d124581aa
Heavily refactors osk.buildDefaultLayout in prep for implementation of modifier chirality. Also defines a lot of nice modifier + state-key constants.
2017-09-12 08:32:37 +07:00
Gabriel Wong
7b16636b8a
Don't need special case for cp -R on Mac
2017-09-01 08:32:38 +07:00
Joshua Horton
7febeff4d3
Fixes unexpected '%' insertion in compiled UI code.
2017-08-30 10:26:26 +07:00
Marc Durdin
418a12da86
Tweaks
2017-08-26 09:22:09 +07:00
Marc Durdin
84697bd7dc
Fixup embedded CSS for Keyman for iOS (interim)
2017-08-26 08:05:56 +07:00
Joshua Horton
e539f4eaaf
Merge pull request #212 from keymanapp/web-remove-shims
...
[Web] Removes now-deprecated shim elements.
2017-08-23 12:14:29 +07:00
Joshua Horton
77a63e76ed
Attachment API rework ( #114 )
...
A massive rework for our attachment and enablement paradigms for web controls targetted for KeymanWeb 10.0, merged from #114 . This also more closely ties the control paths used for page initialization with those used by MutationObservers for dynamically-added elements in an aim to improve internal consistency and facilitate new and future extensions to KMW functionality.
2017-08-23 12:12:48 +07:00
Marc Durdin
7eed41e66e
Merge pull request #208 from keymanapp/web-160
...
Fix conflicts with low U_xxxx key codes
2017-08-22 09:23:28 +07:00
Joshua Horton
4cab224685
Somehow missed saving these changes previously.
2017-08-21 14:27:48 +07:00
Joshua Horton
a75dc68933
Ensuring previous changes got added.
2017-08-21 14:08:54 +07:00
Joshua Horton
abb9d7444f
Removes shim elements and references while deprecating the old shim API functions.
2017-08-21 13:39:30 +07:00
Joshua Horton
e3728c61fe
Addresses the comments of #106 .
2017-08-21 12:29:44 +07:00
Marc Durdin
edaaea8026
Fixup off-by-one in defaultKeyOutput
2017-08-18 15:59:42 +07:00
Marc Durdin
a855af3afd
Rework the logic around U_xxxx when not in VKDictionary
2017-08-18 13:57:58 +07:00
Marc Durdin
8d7629a40f
Fix for #160
2017-08-17 14:30:09 +07:00
Darcy Wong
2fc20b6ce6
Fix build scripts for Linux
...
n trying to build Keyman for Android on Linux, the following issues needed to be fixed:
Set `build.sh` and `gradlew` scripts to executable
KMEA/build.sh needs an OS check so build.bat is only called on Windows
web/source/build.sh needs $compiler and $copmiler_warnings values in quotes
2017-07-31 08:36:10 +07:00
Marc Durdin
7125e3a08e
KeymanWeb 10.0 alpha ( #124 )
...
* Fixes #107 - move __BUILD__ and dfltLayout variables into tavultesoft object
* Cherry-pick fix for error from attachment api rework #114
* Fixup missing __BUILD__ reference
* Update header version number
* Fixup broken getDefaultKeyObject() call so we can release 2.0
* Fixes #118 - longpress menu sometimes missing base key on phone devices (#134 )
* Add note to build scripts to remind devs to make changes to both scripts
2017-07-26 07:36:58 +07:00
Marc Durdin
77ac8bc786
KMW: Treat warnings as errors ( #120 )
...
* Test CI
* Test CI again
* Test CI again
* Test CI again
* Test CI again
* Turn warnings into errors (but don't turn on all warnings)
2017-07-19 09:54:30 +07:00
Marc Durdin
cb296d9411
Merge pull request #117 from keymanapp/web-longpress-numeric-issue-115
...
Long press in numeric/symbol layers does not work
2017-07-10 10:45:27 +07:00
Joshua A. Horton
a1c123efbe
Turns out Windows msys and Linux cp -R behavior is identical - OS X is the odd one out. So, redid the filtering.
2017-07-10 10:21:45 +07:00
Marc Durdin
b26781f44d
Long press in numeric/symbol layers does not work
2017-07-10 10:14:19 +07:00
Joshua A. Horton
59dab88ae1
Merge remote-tracking branch 'origin/web-build.sh' into web-build.sh
2017-07-10 09:52:48 +07:00
Joshua A. Horton
1b47c77753
Fixes the shell build for Mac systems - the resource copy path behavior appears to differ on the two OSes.
2017-07-10 09:50:37 +07:00
Joshua Horton
67f92028f2
Merge remote-tracking branch 'origin/web-build.sh' into web-build.sh
2017-07-05 15:10:38 +07:00
Joshua Horton
d41cca7368
Changes as per code review.
2017-07-05 15:09:01 +07:00
Darcy Wong
7a90a7440e
Make build.sh executable
...
Add sha-bang and set file to +x
2017-07-05 14:11:39 +07:00
Joshua Horton
c381a40702
Restores build.bat for now.
2017-07-05 13:57:39 +07:00
Joshua Horton
d81e4b6231
Converted the Windows-dependent build.bat into a build.sh shell script.
2017-07-05 13:33:34 +07:00
Joshua Horton
c7fbac0d84
'util' -> 'ui' in the re-init check.
2017-07-04 10:21:43 +07:00
Joshua Horton
152880b883
Wrapped most source files with conditional loading scheme in order to block accidentally redefining functionality and data if KMW is loaded multiple times.
...
A few of the simpler files (definitions of string functions, basic init) were left unchanged.
2017-07-04 09:17:27 +07:00
Joshua Horton
f71c7e56fd
Initial work toward bookmarklet issues #108 & #109 .
2017-07-03 15:58:11 +07:00
Joshua Horton
7af8b93cf8
Corrects issue #110 - fixes the embedded control path for hardware keyboard input and adds a layer of protection to prevent future touchable-mode breakage.
2017-06-29 10:35:57 +07:00