                                  (.preventDefault e)))
                :on-drag-start (partial column-drag-start state column owner)
                :on-drag-end (fn [_] (println "on-drag-end"))
+               ;; Reset this columns drop-idx to clear the marker
+               :on-drag-leave (fn [_] (om/set-state! owner :drop-idx nil))
                :on-drop (fn [e]
                           (println "on-drop")
                           (let [source-column (get-transfer-data e "application/x-pepa-column")

                            (handle-drop! (:id column)
                                          source-column
                                          page-ids
                                          drop-idx)))}
     [:header (column-title column state)]
     [:ul.pages
      (let [pages (map-indexed (fn [idx page] (assoc page :idx idx))

                          (map om/value))
                    page-ids)]
    ;; TODO: Assert?
    ;; NOTE: We need to handle (= idx page-count) to be able to insert pages at the end
    (when-not (<= 0 target-idx (count existing-pages))
      (throw (ex-info (str "Got invalid target-idx:" target-idx)
                      {:idx target-idx
                       :column-pages existing-pages
