-magnifyWithEvent: changed in Yosemite?
-magnifyWithEvent: changed in Yosemite?
- Subject: -magnifyWithEvent: changed in Yosemite?
- From: Graham Cox <email@hidden>
- Date: Mon, 17 Nov 2014 09:16:14 +1100
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@hidden)
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:
This email sent to email@hidden