Only finish a zoom animation based on our own transitionend events.

 Fixes #1934