Dear OEMs and software developers,
Please learn to write a proper multi-touch interface driver. Copy Apple. I don’t care. Apple got it 100% correct in every way. I don’t even own an Apple product. In fact, I discovered this in reverse. I got an Android phone (LG Ally), and found its multitouch gestures somewhat useful. I remembered seeing something like that on the iPhone. But the experience… is entirely different on Android. The pinch zoom is freaking terrible.
Just try to use Google Maps on a (Google) Android phone. Impossible. Pinch zoom to where you want, you pinch to where you want and let go… BLAM, the screen explodes to some totally ridiculous zoom level. OK. Pinch zoom back out, can’t even pinch to the level you were just at… let go… BLAM, you’re zoomed into a pebble in the road. I give up and start hitting the +/- zoom buttons to get back to reality. This behavior is all over Android, especially in photos.
Same with my “Elantech” touchpad. I have a pinch-zoom function that does the same exact thing, bouncy zoom. In Picasa (wait, is that another Google app? Yes it is!), I can pinch-zoom. But what’s it do? Release fingers, and BOUNCE. Snaps to some random-ass zoom level, usually orders of magnitude out of range. And it’s always zooming “in”, too… it never zooms “out”.
Then I used an iPhone 4 with Google Maps. WOW. Perfect. Everything zooms and pans directly and instantly, as if my fingers were manipulating the map itself. Web, everything pans and zooms beautifully. Apple did it right, they implemented proper input filtering to detect those out-of-range values and remove them. Why the hell hasn’t Google and friends done the same?