#88 Bind mouse "Back" and "Forward" buttons for pagination

SVN
open
nobody
None
5
2014-06-28
2014-06-28
FeRD
No

Next up in my push to complicate mcomix with as many redundant input bindings as possible. ;-) (Hey, what can I say? Larry Wall's "TMTOWTDI" is my jam):

My mouse has a pair of side buttons intended as Back/Forward navigational controls, they're mapped as Button 8 and Button 9 respectively, labeled by xinput as "Button Side" and "Button Extra" (*sigh* — But as I said they're bound in, for instance, Firefox as Back and Forward navigation commands).

I'd like to propose that these two buttons be bound as additional paging controls in mcomix (executing PageUp and PageDown, respectively).

JUSTIFICATION:

I realize that page-flipping is already bound to both of the scrolling directions on the mouse, making this seem unnecessarily redundant. However,

  1. Continuous-motion input (scrolling) isn't particularly well-suited to page-flipping, as it lacks precision. It simply wasn't intended to be used that way. While features like detent stops and textured wheels help, it still requires care to roll the wheel one stop and one stop only. Accidentally overscrolling and having to correct breaks the flow of reading. Navigating using button presses, however, naturally guards against accidental repeated motions.

  2. The scrollwheel isn't a dedicated page-navigation tool, in fact that's not even its primary function. Unless the entire page fits on screen, it will primarily provide actual scrolling. It can be convenient, in those instances, to have separate buttons that will always execute page-turn operations regardless of the view's state.

  3. The Back/Forward buttons aren't currently being used for anything at all...

Discussion