Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Natural Scrolling vs. Reverse Scrolling

A topic by Screwtapello created 6 days ago Views: 72 Replies: 3
Viewing posts 1 to 3
(+1)

I’m working on a deck right now, using my laptop, and I’ve been using the arrow keys to quickly switch between cards. I gave it to a friend (who is unfamiliar with Decker) to test on their phone, and their very first comment was “when I swipe left to go to the next card, it takes me to the previous card instead”.

I want to address this, but I’m not sure how.

  • I could say “that’s just how it is, deal with it”, but I imagine other people will get tripped up by this too
  • I could override the navigate event to work “backwards”, which will make touch-screens feel more natural, but then arrow-key navigation is weird
  • I could override the navigate event to do nothing, which prevents a convenient shortcut but also prevents confusion

I already have “back” and “next” buttons on every card, as well as a table-of-contents card, so losing the navigation shortcuts wouldn’t be the worst thing in the world, and that is probably what I’ll go for.

Are there any other alternatives?

(+2)

It's not perfect but you could add some keyboard shortcuts to the "back" and "next" buttons, which isn't ideal but does still make things a bit more usable

(+1)

That’s a good point, thanks!

(+3)

I've had the same issue while testing a book-style project on mobile. I don't believe there's any easy way to separate mobile swipe events from other kinds of left and right navigation.

For now my solution is to have a checkbox on the first page of the project that reverses the direction of navigation. Hopefully people will use it. :)

This is what I have in the deck script currently:

on navigate x do
 if innercover.widgets.mobileswipe.value
  if x~"right" go["Prev"] end
  if x~"left"  go["Next"] end
 else
  if x~"right" go["Next"] end
  if x~"left"  go["Prev"] end
 end
end

(Thank you to Internet Janitor for answering my questions about this in the past)