Use AutoTimer instead of Timer, and add some more locking.

Change-Id: I83a99e333a6c62bf7779e3fbbcc3e5af38bb2ca5
[not for master] Don't generate previews for gltf.

They are needed as fallback though; so a better solution is needed for master.

Change-Id: Ic35ec4de83bac6d73e1f745d88947915adc5130a
slideshow: Don't assume anything about the duration.

Let the player decide what to do when the duration is zero, and start()/stop() was called.

Change-Id: I17027349e8d61f7b114e193a769402c04a64f3f3
First stop the timer, then the animation.

Change-Id: Icd5f9f4b8e1c48176fdb73c954e1c4b7d0811516