Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo


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


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).


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...