[Bf-committers] Horizontal scrolling support (mainly on Mac)

William Reynish billrey at me.com
Thu Nov 5 12:22:43 CET 2009


Hi James and Damien,

The smooth scrolling patch sounds great. As you point out, OS X has  
very slick scrolling because it doesn't treat scrolling like lots of  
fast clicks, but more like a single smooth movement. Scrolling slowly  
in Blender exposes how choppy the experience currently is, and so  
having smooth scrolling in Blender would be really nice.

As for trackpads, this is something we can really look into exploiting  
better. In the short term, omnidirectional scrolling would be very  
nice, and in the longer term, multi-touch gestures too. It the Blender  
Conference it struck me just how many people were carrying not only  
laptops, but shiny new Macbook Pro's, all of which support multitouch  
gestures in the trackpad.

At the moment it's really inefficient moving around in 3D using a  
laptop, and tapping into multitouch can really help make pans, orbits  
and zooms fast and natural for laptop users. We can explore different  
ways of using multiple fingers and scrolling to make these things much  
easier for laptop users, like:

Two-finger scrolling: pan around in any direction
Alt + two-finger scrolling: Orbit around
Three-finger scrolling: zoom

This way the two-finger scrolling becomes nice and consistent, but we  
can just as easily explore other mappings.

Cheers,

-William



On 5 Nov, 2009, at 10:52 AM, Damien Plisson wrote:

> Hi James,
>
> I agree with you that the handling of the trackpad features of the
> macbooks would be very useful, especially since they don't provide a
> MMB, and that LMB and RMB can't be pressed at the same time.
>
> I'll more in favor of a smooth option (your second one, the first one
> is too jerky especially for rotate), with the handling of the two
> other gestures (pinch & rotate for zoom & rotation).
> These two are documented in the 10.6 SDK, but are functional, though
> undocumented from 10.5. And it should even be possible to have them
> included in a 10.4 built (even if functional only 10.5+).
>
> Anyway, these need more important changes in non OSX (thus
> multiplatform) parts of Blender code.
> One idea for such "additional per OS" features would be to provide an
> "operator call" event to ghost, to provide OS specific options while
> maintaining a cross-platform common base in WM/event.
> But this is more a long term objective at a very early brainstorming
> status.
>
> We need the UI experts advice too for this...
>
> Damien
>
>
> Le 5 nov. 2009 à 00:46, James Deery a écrit :
>
>> Hi,
>>
>> I've been playing with Blender recently and couldn't help feeling it
>> could benefit from supporting horizontal scrolling. Particularly the
>> full two dimensional scrolling provided by OS X, and especially the
>> two finger scrolling on the trackpads. I've had a look at the event
>> system and have come up with two ways of doing this.
>>
>> The first is simply to add extra parameters and constants to the
>> various mouse wheel events to allow for left and right wheel events.
>> This seems to easily apply to Windows and X11 too.
>>
>> But OS X handles scroll events differently, more like pixel based
>> mouse movement than the click-based events on Windows and X11, so I
>> though about creating a new event type, distinct from "wheel" events.
>> I called this a "mouse pan". I ended up changing a lot more with this
>> approach, including additions to the view operators. This gives much
>> smoother scrolling and almost works for non-constrained zooming, but
>> needs a fair bit more work.
>>
>> So I have two patches, both only apply to OS X at the moment:
>>
>> http://demo.jadex.org/scroll-simple.patch
>> http://demo.jadex.org/scroll-pan.patch
>>
>> I don't think either are ready to apply as they are and I'm sure  
>> there
>> will be differing opinions on my key mapping. The first patch would
>> obviously work better cross-platform, but I think something is
>> potentially being missed. So is it worth me continuing down the  
>> second
>> root? Ie, is there any chance of it being accepted?
>>
>> Any comments and suggestions?
>>
>> James
>> _______________________________________________
>> Bf-committers mailing list
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers



More information about the Bf-committers mailing list