← All ideas
  • Published 22 Jul 2020

Proposal: Re-purpose the default Alt+Middle mouse drag for timeline scrubbing

Problem

Currently the modifier keys + middle mouse drag are exclusively used to manipulate * space * in the viewport (zoom, pan, roll(?) and rotate). However I don't feel the current implementation of alt + middle mouse drag (view axis snap) mouse drag is intuitive. While incredibly useful, I feel it's better suited as a 'snapping' augmentation to the rotate viewport operator (invoked with rotate modifier + middle mouse drag then ctrl while rotating).

Proposal

I propose alt + middle mouse should invoke an operator dedicated to easily manipulating * time * in the viewport instead. This will create a more intuitive approach for animators to scrub through animations while posing and opens up possibilities of keeping their focus in the viewport rather than context switching or moving their hands from one side of the keyboard to another.

Reason

  • alt + middle mouse scroll manipulates the timeline in increments, but alt + middle mouse drag invokes view axis and on top of that alt + middle mouse invokes center view to mouse . None of this is consistent. I believe the pan operator should invoke center view to mouse and rotate view should invoke view axis through modifier keys.
  • modifier + middle mouse scroll used to adjust viewport navigation similar to the current alt + middle mouse scroll functionality for timeline. Not sure why that was removed in the default keymap for 2.8+ but that's a different proposal...
  • While scrolling the middle mouse is helpful for small increments a modifier dedicated to large scale timeline manipulation in the viewport as a first class citizen would greatly help animators flip through frames.
  • Having people reach all the way to the arrow keys to manipulate the timeline increases hand strain and fatigue.
  • When animating with a tablet not many animators have access to a scroll wheel so alt + middle mouse scroll isn't possible or hard to use without a special macro/hardware. However many map middle mouse to one of their pen buttons making this a viable and faster alternative.
  • This opens up possibilities for extra animation functionality in the modal operator.

Implementation

I've created a small add-on that implements a timeline scrubber operator in the viewport.

  • It mimics the functionality of alt + middle mouse scroll - (stops at the start frame, doesn't stop and end frame)

scrub

  • Implements keyframe snapping (with ctrl ) - works with current action on 3d object or current layer on greasepencil stroke

snapping

  • Implements keyframe insertion (with alt + middle mouse and no drag offset) - Needs active keyset set first

snapping

Unfortunately I don't have a clean way of overwriting keymaps and restoring them so the operator keymap has to be set by hand until I figure it out: keymap

It's still in development so it might have some bugs. I'd love to hear thoughts and opinions. I also realize this should work on multiple contexts other than just the viewport (timeline, dopesheet, shader graph, compositer, vse) and will add that functionality when I have some time.

time2.PNG

80%

Development Status: Open

Upvote 4 Downvote 1
plachenko
22 Jul 2020

0 Comments