                     :placeholder "Looking for? (ctrl-s)"
                     :name "query"
                     :autoComplete "off"
-                    :on-input #(put-text % internal-text-chan owner)
+                    :on-input (throttle 200 #(put-text % text-chan owner))
                     :on-key-down #(maybe-nav % app ac-results)})))))
 
 (defn ac-results [{:keys [highlighted-index ac-results]

                     :as app}
                    owner]
  (reify
    om/IWillMount
    (will-mount [_]
      (let [text-chan (or (om/get-state owner :text-chan) (chan))
            internal-text-chan (chan)
            throttled (throttle internal-text-chan 250)]
        (pipe throttled text-chan)
        (om/set-state! owner :internal-text-chan internal-text-chan)))
    om/IDidUpdate
    (did-update [_ prev-props prev-state]
      (when (and (not= (:highlighted-index prev-props)

                 (> (count ac-results) 0))
        (anim/scroll-into-view (om/get-node owner (:highlighted-index app)) {:pad 30})))
    om/IRenderState
    (render-state [this {:keys [text-chan text]}]
      (dom/form {:class "search"
                 :autoComplete "off"
                 :on-submit #(search-submit (nth ac-results highlighted-index))}
