Tienson Qin vor 3 Jahren
Ursprung
Commit
dbeca541cf
1 geänderte Dateien mit 7 neuen und 1 gelöschten Zeilen
  1. 7 1
      src/main/frontend/db/model.cljs

+ 7 - 1
src/main/frontend/db/model.cljs

@@ -579,10 +579,16 @@
         cached-ids-set (set (conj cached-ids page-id))
         cached-ids-set (set (conj cached-ids page-id))
         first-changed-id (if (= outliner-op :move-subtree)
         first-changed-id (if (= outliner-op :move-subtree)
                            (let [{:keys [move-blocks target from-page to-page]} tx-meta]
                            (let [{:keys [move-blocks target from-page to-page]} tx-meta]
-                             (if (not= from-page to-page)
+                             (cond
+                               (= page-id target) ; move to the first block
+                               nil
+
+                               (and from-page to-page (not= from-page to-page))
                                (if (= page-id from-page)
                                (if (= page-id from-page)
                                  (first move-blocks)
                                  (first move-blocks)
                                  target)
                                  target)
+
+                               :else
                                ;; same page, get the most top block before dragging
                                ;; same page, get the most top block before dragging
                                (let [match-ids (set (conj move-blocks target))]
                                (let [match-ids (set (conj move-blocks target))]
                                  (loop [[id & others] cached-ids]
                                  (loop [[id & others] cached-ids]