Hi, in Garmin's native apps, I sometime sees dots on the left of the screen that tells me which pages I'm on (I don't know what they are called). Is this feature available to CIQ too or do we need to built it ourselves if we want something similar?
Hi, in Garmin's native apps, I sometime sees dots on the left of the screen that tells me which pages I'm on (I don't know what they are called). Is this feature available to CIQ too or do we need to built it ourselves if we want something similar?
Furthermore, as OP said, the code in sample is written the opposite way of what the API would suggest is correct:
The onNextView handler [which was named by Garmin] is asking the view loop to go in DIRECTION_PREVIOUS [also named by Garmin]. This makes zero sense, regardless of how the actual input handling / scrolling works in the sim or real device.
Garmin named both things (the input handler and the view loop direction enum), so it would make zero sense that Garmin would want you implement the next handler to use the previous direction and vice versa. That would be a sign of a broken API.
If the code was changed to make sense [onNextView asks the view loop to go in DIRECTION_NEXT], then the sample would work on a simulated FR955, but it would have arguably incorrect resutls on a simulated FR935.
So I think the real bug might be with at least the simulated view loop behaviour on an FR935. Haven't tried this on any real devices.
[2/x]
a different way of looking at things. Up/down prev/next thing always confused me, not only here. And I'm pretty sure it's not only me. It's based on a way of looking at what's going up. Think about the difference between how scrolling a website in the browser with the mouse scroll wheel (or touchpad) between a Mac and any other OS. It can be very confusing when you're used to the other way, and it can be very natural when you're used to it.
That is exactly what I was talking about above, and Garmin is no different than Apple [or Microsoft] in this respect:
- UP/DOWN buttons on Garmin = UP/DOWN arrow keys on Mac or Windows: this moves a cursor through the content. Pressing UP takes you to the item that's "physically" above the current one. Arguably this is a completely arbitrary convention, but it's what people are used to based on using "old" computing devices (computers).
- UP/DOWN swipe on any touchscreen = UP/DOWN swipe on Mac touchpad or any modern Windows touchpad [made within the 10+ years]: this moves the content itself. Swiping UP takes you to the item that's "physically" below the current one, because as you move the content, your physical position [cursor/scroll position] on the screen moves down. This is actually incredibly intuitive, because you are physically touching the content on the screen
Only extremely old Windows trackpads will work they way you are describing [the opposite of Mac trackpads]
Have you ever used a touchscreen at any point in your life? Everyone intuitively knows that you swipe in the *opposite* direction that you want to move when you're scrolling through any kind of list. If I want to go towards the bottom of a web page, I swipe up. Same as you swipe the touchpad/touchscreen right to go back [physically "left"] and swipe the touchpad/touchscreen left to go forward [physically "right"] in a web browser. [On a touchpad, you have to swipe with 2 fingers]. Those "physical" directions aren't arbitrary, as they match the corresponding animations on screen and the physical directions of the "back" and "forward" buttons in a web browser like Chrome or Firefox. Swiping right is the same as pressing the back [left] button, and swiping left with two fingers is the same as pressing the forward [right] button.
Even Windows supports these "universal" trackpad gestures: swipe right with 2 fingers to go back, and swipe left with 2 fingers to go forward.
The way it works with modern touchpads is perfectly intuitive when you make the analogy with using a touchscreen. I do know people who find modern trackpads unintuitive and they tend to reverse the scroll direction in their OS settings. It's pretty annoying if you have to use their laptop to show them something at work, and it works the opposite way of every touchpad for the last 10 years.
I agree that it largely comes down to what you're used to.
I also think it makes more sense for a mouse scroll wheel to work like arrow keys (scrolling up should move the cursor up), but people are so used to touchscreens that it kinda makes sense that Apple would handle a scroll wheel the opposite way (same as a modern trackpad)
I'm not saying that Garmin is different from Apple and neither is OP. The only real difference between Apple and Microsoft is how scroll wheel handling works, which isn't really relevant here. The real analogies are:
- Garmin UP/DOWN buttons = arrow keys on a computer [either Mac or Windows]
- Garmin touch screen = touchscreen [iphone, android] or computer trackpad [Mac or modern Windows]
The mouse screen wheel analogy is irrelevant here, since I think that's a very special case which doesn't necessarily have to map to either arrow keys or touchpad behaviour.
But to complete the discussion:
- Window mouse scroll wheel handling: this works the same as it always has for decades of computing - scroll wheel follows "arrow key behaviour".
- Mac mouse scroll wheel handling: this is different than the old way of doing things. In this case, the scroll wheel follows "touchscreeen" / "modern trackpad behaviour".
I prefer Windows mouse scroll wheel handling, but I realize it's arbitrary and it's not relevant to this discussion because neither the garmin touchscreen nor the directional buttons are analogous to a mouse screen wheel.
[3/x]
TL;DR even if you think Apple's trackpad / scroll wheel behaviours are wrong - and some people do [*] - the issue OP is talking about is not the same kind of thing.
OP is saying that Garmin's Primate sample works differently than normal Garmin UI on a real device.
[*] personally I think Apple's trackpad behaviour makes sense - it follows the behaviour of a touchscreen and everyone has copied Apple for about 10 years. I also think their mouse scroll wheel behaviour is wrong, but that's a bit more arbitrary. Apple sees the scroll wheel as moving the content, while I see it as moving the cursor.
You'll also note that even on a Mac, iPhone or iPad, if you "physically" drag a scrollbar, it still works the "old way" that everyone expects - moving the scrollbar down moves your current position (cursor / scroll position) down.
I don't think arrow key / scrollbar behaviour being the opposite of trackpad/touchscreen behaviour is confusing as long as you realize there's two completely different metaphors at play: moving a cursor through content as opposed to moving the content itself.