Ticket Created
over 4 years ago

WERETECH-9013

Vivoactive 4S swipe identified as a key pressed

At least on the Vivoactive 4S, since I wasn't able to test this out on other devices, there seems to be an undocumented / unwanted behavior that is not directly visible when testing in the emulator.

While developing Monky (https://github.com/vladmunteanu/monky), I had to adjust one of the minigames so that it checks for a key pressed event instead of a swipe right, because when the app ran on the actual watch, it would trigger the onKey event, instead of onSwipe. (https://github.com/vladmunteanu/monky/blob/37fae93329cd7875d9d3c05c9a64c6cffd4cee07/source/SwipeGame/SwipeGameDelegate.mc#L17)

If intended, the documentation should at least be changed to reflect this when implementing an InputDelegate. 

Parents Comment Children
  • You need a back on touch devices.  That's how you exit most things.

  • I honestly wonder why Garmin didn't choose to implement the product differences at next higher level, the BehaviorDelegate. 

    On a non touch screen device, does a swipe trigger a key press? No, there's no such event. So why would you go out of your way to create a low level event for something that conceptually doesn't exist on the device? 

  • The va3 and va4 have had odd input mapping all along, in part due to having only 1 or 2 buttons.  And things that occur with no buttons, being touch screens.

  • Thanks for replying so promptly. I can agree with you that this functionality is somewhat desired in certain situations. However, conceptually an InputDelegate doesn't know what an "onBack" is. According to the SDK docs.

    So it can be less intuitive when implementing something with a lower level component.