                  (om/update! app :current-item item))))
             (recur)))
 
-      ;; sync loop
-      ;; XXX: Don't know if sync is the best name anymore
+      ;; event loop
       (go (loop []
-            (let [{:keys [op data]} (<! (om/get-state owner :sync))]
+            (let [{:keys [op data]} (<! (om/get-state owner :event))]
               (condp = op
                 :create
                 (let [data (<! (util/edn-chan

               (apply dom/div nil
                      (prepare-item (:item/text item)))))))

(defn item-add-view [item owner {:keys [current-item sync]}]
  (reify
    om/IRenderState
    (render-state [_ state] ;; keys chan as etc?
      (let [opts {:current-item current-item ;;; XXX
                  :sync sync}]
        (dom/div #js {:id "item-add-view"}
        (dom/div #js {:id "item-info"}
                 (dom/div #js {:className "item-name editable"}

    om/IInitState
    (init-state [_]
      {:current-item (chan)
       :event (chan)})

    om/IWillMount
    (will-mount [_]
