Vivoactive 3 - Right swipe is now Back? Hold on the screen is now Menu?


1] My app implements onSwipe[] , BUT it returns false for right and left swipe. Still, I could not find a way to dismiss a menu on the Vivoactive 3 simulator [which I can do with the back key for the other devices].

Am I missing something or did I find a bug?

My code is basically:

var aMenu = new Ui.Menu[];
aMenu.addItem["aMenuItem", :menuItem];
Ui.pushView[aMenu, new aMenuDelegate[], Ui.SLIDE_IMMEDIATE];

I do not think my "menu delegate" really plays a role here, especially when the same code works for all other devices. But, ok, maybe it's just a simulator issue.

Now... something more important:

2] "Hold on" the screen is now Menu? Right swipe is now Back? Then you shouldn't say that apps for Approach S60 and Vivoactive 3 are easily and automatically portable.

I have apps for which onHold and onMenu [or onKey, then key == KEY_MENU] had completely different implementations. Same for swipe right and key == KEY_BACK.

If I can't use onHold and onMenu as separate behaviours for the Vivoactive 3 [or any other touchscreen device], a lot has to be changed. And if this is the case, Garmin shouldn't consider the Approach S60 and the Vivoactive 3 as fully compatible devices. I ported my apps for the Approach and they were automatically made available for the Vivoactive 3, but now I'm afraid they'd just "malfunction" on the Vivoactive 3 [I do not have it to test - yet].


  • I reported the menu issue in the bug reports forum here: https://forums.garmin.com/forum/developers/connect-iq/connect-iq-bug-reports/1247009-swipe-right-from-menu-on-vivoactive-3-doesn-t-go-back-to-last-view-on-simulator

    I don't utilize any custom swipe event functionality so I don't have any suggestions on how to over come your other swipe issues. I do, however, feel your pain on the input change similarly with respect to the fact that a long press on the up button now goes to the built in watch settings page.

    Cheers,
    Douglas
  • Maybe it'd require major changes on the firmware [and I really hope that it's technically possible], but I think it'd be a great idea to have a long press on the ENTER/ACTION key to behave as onMenu/KEY_MENU [and onHold as onHold].

    The new device has only one physical button, while the predecessors had two or three, which had different long press and short press behaviors [talking about the VAHR and Approach S60]. Even though it's a touchscreen device and there are some possible workarounds, the lost of three input possibilities is a big thing, especially when the new input mapping messes up with the existing ones.

    Making generic apps [e.g. one which would work for the VAHR and for the VA3] seems to be a challenge now. What is the expected behavior of my app with onHold?? Can't I have it together with onMenu as before?? Without annotations or anything more "complex'?
  • Here's how things are supposed to work. I think there are bugs in the sim. (long press on the va3 doesn't generate onMenu() for example, and right swipe should dismiss the menu)

    https://developer.garmin.com/index.p...e-vivoactive-3


    I'm just going by the blog post for now. Based on what it says, my apps should be fine. I avoid things like onHold, onKeyPress, onKeyRelease, as I'm not quite sure what happens with them on a given device. And I only use BehaviorDelate.

    (side note: r.485, the bad url you told me about in the guest post has been fixed! Thanks again!)
  • ...(long press on the va3 doesn't generate onMenu() for example, and right swipe should dismiss the menu) ...

    It does in my case! But I cannot close the menu, because of the left-to-right-swipe issue/wrong implementation :)
    You cannot use onHold and onMenu at the same time, I guess.

    Probably the "issue" is a deceptive blog post, aka, wrong implementation :rolleyes:

    Let's wait for an answer in the Bugreport-Thread.
  • I tracked down why I wasn't seeing the long press in a watch app. Turns out I was looking for KEY_MENU in it. If I switch to onMenu(), it works fine. So it was my bug! :(
  • Ok, if I got it right:

    - onHold and right swipe can't be used on the Vivoactive 3. The respective gestures trigger onMenu and onBack.
    - onKey events with KEY_MENU and KEY_ESC will not be triggered in these cases.

    If my implementation for the Approach S60 was:

    [HTML]function onKey[evt]
    {
    if [ evt.getKey[] == KEY_MENU ]
    {
    // open a menu
    }
    else if [ evt.getKey[] == KEY_ESC ]
    {
    // do whatever
    }
    }[/HTML]

    then my auto-migrated app won't work.

    But ok, not a big problem, I can refactor the code.

    However, when I read

    ... Turns out I was looking for KEY_MENU in it. If I switch to onMenu, it works fine. So it was my bug! :(


    I get the feeling that I'm not the only dev that uses the onKey strategy instead of onBack, onMenu, etc.

    So, would it be possible to let onKey with KEY_MENU and KEY_ESC to be triggered by onHold and right swipe on the Vivoactive 3?

  • I am going to hold off on the Vivoactive 3 .. as well my app exits (menu maybe) on a right swipe that I can tell in the simulator. Thus .. not working and I have no code anywhere to have it do so. But I see a ton of apps already for the device and I bet that there are going to be issues as they were surely mostly all auto migrated. I am going to buy a Vivoactive 3 when it comes out here in 2024. Until then .. not going to take the leap as it is just too risky as the Vivoactive 3 seems different than other devices, either that or the simulator is just having a bad day.
  • Stay positive! Until the watch is released, we will receive several new SDK's and/or get another tutorial, how to workaround it :)
    I'll get mine maybe not as soon as possible. I'd like to read some reviews, first :rolleyes:


  • I do not care about the Connect IQ stuff .. I just want the device. It will probably be 2 months after the US gets them that we will get them in Canada where I live. I have little to no interest in developing for the Vivoactive 3 due to it being a round device.
  • Hey,

    As a slight update to some of the questions here. There is a bug in the sim that is causing the menu behavior to behave inaccurately. I've already reproduced the bug and reported it internally.

    Thanks,
    -Coleman