   Unmount the component to stop the animation."
   [owner tick-state]
   (let [max-tick (apply max (keys (:ticks tick-state)))]
-    (run-animation* owner tick-state max-tick 0)))
+    (utils/rAF (fn [timestamp]
+                 (run-animation* owner timestamp timestamp tick-state 0 max-tick)))))
 
 (defn cleanup [owner]
   ((om/get-shared owner :cast!) :subscriber-updated {:client-id (ffirst state/subscriber-bot)

                                        :fields {:mouse-position nil
                                                 :layers nil
                                                 :tool tool}})
                  (d/transact! (om/get-shared owner :db) [base-layer] {:bot-layer true}))))))

(def text-height 14)


                                        :fields {:mouse-position nil
                                                 :layers nil
                                                 :tool :text}})
                  (d/transact! (om/get-shared owner :db) [base-layer] {:bot-layer true})))
      (annotate-keyframes start-tick end-tick))))

(defn signup-animation [document vw]
  (let [text "Sign in with Google"
