feat(developer): add 'default' property for longpress keys#9432
feat(developer): add 'default' property for longpress keys#9432
Conversation
Fixes #9430. Adds a 'default' property to subkeys, only used by longpress-type subkeys: * Added property to schema and readers/writers * Added property to touch layout validator * Added editor for property to layout builder
User Test ResultsTest specification and instructions
|
| : Boolean. Defaults to `false`. If true, this will be the default key when the | ||
| user longpresses the base key without moving their finger. Only one subkey | ||
| should be default; if multiple subkeys have the default field set, then | ||
| behaviour is undefined. |
There was a problem hiding this comment.
It might be nice to have the "cancel" behavior you wrote in #8519 documented somewhere
- Given that cancel is not the preferred default action for a longpress, the user can cancel the longpress default by sliding outside the 'acceptance' area -- e.g. south of the key cap, which would then unhighlight the default and indicate visually that no output would occur when they release their finger.
|
Changes in this pull request will be available for download in Keyman version 17.0.158-alpha |
|
I am using iOS, keyman 17.0.161 and a keyman with longpress default is set true. Still longspress is not pickup the default key. store(&VERSION) '17.0' developer throws error Am I missing something |
|
@MayuraVerma - This has only been implemented in Keyman Developer so far. The mobile apps will still need to implement handling default subkeys (likely post-17.0) |
I'm a bit curious about that point.
Likely before 17.0 release, at least on iOS. Android is, admittedly, trickier for this. |
While gestures are implemented in v17, if this gesture, longpress+release is also implemented, it would be great. |
The But I plan to add 17.0 to the VERSION statement because flick and multitap gestures are only going to be available in 17.0+. And because that information is stored in the touch keyboard, I need to check and see if Keyman Developer is able to determine it automatically. |
Fixes #9430.
Adds a 'default' property to subkeys, only used by longpress-type subkeys:
User Testing
In Keyman Developer, open the touch layout tab in a keyboard. Select a key and create a set of longpress keys.
"default":trueis correctly set for the subkey."default"is correctly removed for the subkey."default":trueis correctly set for the new subkey, and removed for the old subkey.