Swipe gestures not fully implemented on the Vivoactive?

Former Member
Former Member
Hello,

the upwards and downwards swipe gestures don't seem to be available for my app, on the Vivoactive watch. The horizontal swipes are recognized fine, and the app receives such events, but the vertical swipes never seem to be triggered. On the other hand, I see that in some Garmin applications for the same watch, I can use the vertical swipes too. Why is that, is there some limitation in regards to the availability of the swipe gestures? What could be the problem?
  • The VA doesn't support up/down swipes. Even in the native watch apps, it uses taps to make vertical stuff happen.

    https://forums.garmin.com/showthread.php?228565-onSwipe-on-Vivoactive-not-working-for-UP-DOWN


    Hello,

    the upwards and downwards swipe gestures don't seem to be available for my app, on the Vivoactive watch. The horizontal swipes are recognized fine, and the app receives such events, but the vertical swipes never seem to be triggered. On the other hand, I see that in some Garmin applications for the same watch, I can use the vertical swipes too. Why is that, is there some limitation in regards to the availability of the swipe gestures? What could be the problem?
  • Former Member
    Former Member over 9 years ago
    The VA doesn't support up/down swipes. Even in the native watch apps, it uses taps to make vertical stuff happen.

    https://forums.garmin.com/showthread.php?228565-onSwipe-on-Vivoactive-not-working-for-UP-DOWN


    Thanks for the info! What is the reason for such a limitation? Does the same limitation exist on other touch-screen Garmin watches?
  • This is hardware limitation due to the nature of the touch screen used on the vivoactive. Other devices, like the Forerunner 630, do not have this limitation.
  • Former Member
    Former Member over 9 years ago
    This is hardware limitation due to the nature of the touch screen used on the vivoactive. Other devices, like the Forerunner 630, do not have this limitation.


    Brandon, thanks a lot for the info! If I'm not wrong, there are currently three Connnect IQ devices with a touch screen: the Vivoactive, Forerunner 630 and the Epix. Would I be wrong if I suppose that the Epix also has this limitation?
  • In the bin directory of the SDK, there is a file called "devices.xml".

    In it, you can find many things about what is or isn't supported on specific devices..

    You can also see that in the simulator by selecting different target devices, and seeing what happens when you swipe/tap/etc.
  • Former Member
    Former Member over 9 years ago
    In the bin directory of the SDK, there is a file called "devices.xml".

    In it, you can find many things about what is or isn't supported on specific devices..

    You can also see that in the simulator by selecting different target devices, and seeing what happens when you swipe/tap/etc.


    Hi Jim, great info, I wasn't aware of the devices.xml file.

    Btw, as the thread in link posted by MoxyRogers say, what is happening on the simulator may not be the same that is happening on the device itself. For example, the simulated BLE makes a 200 ms delay between messages, while my experience is that the Vivoactive takes ~7 seconds to do the same.
  • The Simulator is not an emulator, but it's pretty good. There will be difference in things like testing BLE and doing things like makeJsonRequest() calls, in that the speeds are much different.

    But when it comes to things like button press/swipe, etc, it will be very good.

    The colors on the screen are also much "bolder" than on real devices, so there are some combos you'll want to see on a real device.

    There are also things like on a real watch there is a revert timeout for widget, but you won't see that in the simulator.
  • Former Member
    Former Member over 9 years ago
    The Simulator is not an emulator, but it's pretty good. There will be difference in things like testing BLE and doing things like makeJsonRequest() calls, in that the speeds are much different.

    But when it comes to things like button press/swipe, etc, it will be very good.


    Actually, it's not very good when it comes to press/swipe. I have a Vivoactive watch which has difficulties to register touches in some areas, while the Simulator works fine. The problematic areas are horizontal lines. Try this: separate the screen into 5 equal horizontal lines. My Vivoactive can register touches on the first, third and the fifth stripe, and never on the second nor the fourth one. Why is that?
  • Actually, it's not very good when it comes to press/swipe. I have a Vivoactive watch which has difficulties to register touches in some areas, while the Simulator works fine. The problematic areas are horizontal lines. Try this: separate the screen into 5 equal horizontal lines. My Vivoactive can register touches on the first, third and the fifth stripe, and never on the second nor the fourth one. Why is that?


    The va has 9 "touch regions". a 3x3 grid. On the real device you get an x/y for the center of that region, IIRC. In the sim, you do get the actual x/y.

    The UXguide in the SDK talks about how to handle touches and recommends the 3x3 layout for all devices and as a footnote there it points to:

    "Certain products use a 3x3 touch screen that only has nine touchable areas, so consider it less than a guideline and more of a “do this or else.”"

    update: I just checked some code I wrote a while back for the va (SDK 1.1.2?) that uses touch regions, and what I do is divide the width and height by 3, and based on that, given an x/y see which region it's in so that it works in the sim and on the real device.
  • Former Member
    Former Member over 9 years ago
    The va has 9 "touch regions". a 3x3 grid. On the real device you get an x/y for the center of that region, IIRC. In the sim, you do get the actual x/y.

    The UXguide in the SDK talks about how to handle touches and recommends the 3x3 layout for all devices and as a footnote there it points to:

    "Certain products use a 3x3 touch screen that only has nine touchable areas, so consider it less than a guideline and more of a “do this or else.”"

    update: I just checked some code I wrote a while back for the va (SDK 1.1.2?) that uses touch regions, and what I do is divide the width and height by 3, and based on that, given an x/y see which region it's in so that it works in the sim and on the real device.


    Yes, that's true. My remark was that the Simulator is not simulating the Vivoactive good enough not only when speaking of BLE, but when it comes to touches.

    To be more illustrative: I had read that remark in the docs, but when developing an app, I tried to use more than 9 regions, and that worked (and still works) in the Simulator, giving me a false impression about how my app would behave on an actual device.