Yosemite seems to have changed the way the "pinch to zoom" trackpad gesture is 
handled. This gesture invokes -magnifyWithEvent: on first responder, and in the 
previous OS would only send events while the user was touching and moving their 
fingers on the trackpad. Now it seems to send a whole stream of additional 
events which apear to interpolate between scale values, so as to implement a 
smoothly animated zoom.

Problem is, this doesn't take into account what the view may be drawing - if it 
takes time to draw something complicated, the events start to seriously lag 
behind, and the usability of the pinch zoom becomes greatly compromised (as 
with any delay introduced into a feedback system, in this case between the hand 
and the eye, the result is 'pilot-induced-oscillation' where the user can't 
achieve the zoom level they want, but instead oscillate wildly around it).

I don't have an option to reduce the complexity of what I draw (it's already 
massively optimised), so I need to fix the event handling. Is there a way to 
disable the interpolation? I can't see anything in system prefs. Maybe there's 
an API but I'm not sure where to look. Note that the older way this worked did 
work fine for my app, drawing the same thing.

--Graham



_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to