mirror of https://github.com/logseq/logseq
fix: change last-saved-cursor to atom to avoid global state changes
parent
d7d4a025be
commit
2abe37c987
|
@ -126,7 +126,7 @@
|
||||||
:editor/action (atom nil)
|
:editor/action (atom nil)
|
||||||
:editor/action-data nil
|
:editor/action-data nil
|
||||||
;; With label or other data
|
;; With label or other data
|
||||||
:editor/last-saved-cursor nil
|
:editor/last-saved-cursor (atom {})
|
||||||
:editor/editing? (atom {})
|
:editor/editing? (atom {})
|
||||||
:editor/in-composition? false
|
:editor/in-composition? false
|
||||||
:editor/content (atom {})
|
:editor/content (atom {})
|
||||||
|
@ -1337,9 +1337,14 @@ Similar to re-frame subscriptions"
|
||||||
(doseq [item items]
|
(doseq [item items]
|
||||||
(set-state! [:ui/sidebar-collapsed-blocks item] collapsed?))))
|
(set-state! [:ui/sidebar-collapsed-blocks item] collapsed?))))
|
||||||
|
|
||||||
|
(defn clear-editor-last-pos!
|
||||||
|
[]
|
||||||
|
(set-state! :editor/last-saved-cursor {}))
|
||||||
|
|
||||||
(defn clear-edit!
|
(defn clear-edit!
|
||||||
[]
|
[]
|
||||||
(set-state! :editor/editing? {})
|
(set-state! :editor/editing? {})
|
||||||
|
(clear-editor-last-pos!)
|
||||||
(set-state! :editor/cursor-range nil)
|
(set-state! :editor/cursor-range nil)
|
||||||
(set-state! :editor/content {})
|
(set-state! :editor/content {})
|
||||||
(set-state! :editor/block nil)
|
(set-state! :editor/block nil)
|
||||||
|
@ -1352,17 +1357,18 @@ Similar to re-frame subscriptions"
|
||||||
|
|
||||||
(defn set-editor-last-pos!
|
(defn set-editor-last-pos!
|
||||||
[new-pos]
|
[new-pos]
|
||||||
(set-state! [:editor/last-saved-cursor (:block/uuid (get-edit-block))] new-pos))
|
(update-state! :editor/last-saved-cursor
|
||||||
|
(fn [m] (assoc m (:block/uuid (get-edit-block)) new-pos))))
|
||||||
|
|
||||||
(defn get-editor-last-pos
|
(defn get-editor-last-pos
|
||||||
[]
|
[]
|
||||||
(get-in @state [:editor/last-saved-cursor (:block/uuid (get-edit-block))]))
|
(get @(:editor/last-saved-cursor @state) (:block/uuid (get-edit-block))))
|
||||||
|
|
||||||
(defn set-block-content-and-last-pos!
|
(defn set-block-content-and-last-pos!
|
||||||
[edit-input-id content new-pos]
|
[edit-input-id content new-pos]
|
||||||
(when edit-input-id
|
(when edit-input-id
|
||||||
(set-edit-content! edit-input-id content)
|
(set-edit-content! edit-input-id content)
|
||||||
(set-state! [:editor/last-saved-cursor (:block/uuid (get-edit-block))] new-pos)))
|
(set-editor-last-pos! new-pos)))
|
||||||
|
|
||||||
(defn set-theme-mode!
|
(defn set-theme-mode!
|
||||||
[mode]
|
[mode]
|
||||||
|
|
Loading…
Reference in New Issue