That’s probably the right idea in the long run. I think it’s useful to be able to control both zoom and scroll with a single flick of the wrist, but it definitely should be done in a way that’s easy and pleasing to control for a wide range of people. Part of the problem with knowing how something works under the hood is that you use it differently than the average person would, so Eoin and I never got a sense that it might be unintuitive for some people.
Lock into horizontal or vertical mode per drag. If you start dragging horizontally, you will remain in horizontal mode until the drag event is over. Same thing with vertical mode. This way you only need to be precise at the very start of the drag (although, the precision at the start becomes more important).
In combination with solution #2 to determinate if drag started horizontally or vertically
Many thanks to take care about our point of view
Concerning solution #1 I think the hidden option in kritarc could stay (last nightly build I’ve downloaded doesn’t take it in account yet, I’ll wait for tonight to retest it)
For my personal use I’m able to adapt and have no problem with the vertical drag, but I just want to mention that I think it is not as discoverable as having some visual hint and that it may be counter intuitive because you have to move in the vertical axis to scale in the horizontal axis.
Another option is to put the zoom button in the corner were the two scrollbars meet. Then the button could also have vertical zoom.
blender for the dragging case swaps the mouse icon.
when it is horizontal sliding it is 2 arrows pointing left and right.
when it is vertical sliding it is 2 arrows up and down.
So you know what your doing at each time and to further distinguish them you press middle mouse button to swap direction.
For a timeline the Kdenline solution is the most sensible and expected one to have. And even this is not something that is tottally wide spread.
Considering this is not a animation curves panel I don’t see the need for a horizontal line and vertical line behavior. but even if there is a duality to be introduced they should not be triggered both at the same time that is just asking for weird behavior.
When I do drag horizontal versus vertical I do a simple 45 degree separation even if I have no real need too on my case but it distinguishes when doing this or that clearly because it chooses a direction and then does the math for that case. The most relevant distance should be the one in charge of the operation. Or at least that is my idea for my stylus inputs.