                        :onKeyPress (fn [e]
                                      (when (= 13 (.-charCode e))
                                        (remove-input! (:id page))
-                                       (swap! aurora-state assoc-in [:notebooks (:id notebook) :pages (:id page) :desc] (.-target.value e))
+                                       (update-index! page [] assoc :desc (.-target.value e))
                                        ))}]]
              [:li {:className "page"
                    :onContextMenu (fn [e]
                                     (add-input! (:id page) :desc)
+                                    (.stopPropagation e)
                                     (.preventDefault e))
                    :onClick click
                    :onTouchStart click}


    (condp = (:screen @aurora-state)
      :notebooks (notebooks-list @aurora-state)
      :pages (pages-list (-> @aurora-state :notebooks (get (:notebook @aurora-state))))
      :editor (editing-view))
    ]])




(defn click-add-page [e notebook]
  (add-page! notebook "untitled page"))

(defdom pages-list [notebook]
  [:ul {:className "pages"}
   (each [page (filter #(get (:tags %) :page) (from-index (:pages notebook)))]
         (let [click (fn []
                       (swap! aurora-state assoc :page (:id page) :screen :editor :step [{:notebook (:notebook @aurora-state)
                                                                                    :page (:id page)
                                                                                    :step 0}]))]

           (if (input? (:id page))
