Browse Source

fix: right click journal title to open in sidebar

Tienson Qin 1 year ago
parent
commit
3ae21cd029
2 changed files with 22 additions and 18 deletions
  1. 19 10
      src/main/frontend/components/block.cljs
  2. 3 8
      src/main/frontend/components/page.cljs

+ 19 - 10
src/main/frontend/components/block.cljs

@@ -2545,17 +2545,26 @@
 
 
                 (not block-ref?)
                 (not block-ref?)
                 (assoc mouse-down-key (fn [e]
                 (assoc mouse-down-key (fn [e]
-                                        (cond
-                                          (util/right-click? e)
-                                          nil
-                                          (:from-journals? config)
-                                          (do
+                                        (let [journal-title? (:from-journals? config)]
+                                          (cond
+                                            (util/right-click? e)
+                                            nil
+
+                                            (and journal-title? (gobj/get e "shiftKey"))
+                                            (do
+                                              (.preventDefault e)
+                                              (state/sidebar-add-block! repo (:db/id block) :page))
+
+                                            journal-title?
+                                            (do
+                                              (.preventDefault e)
+                                              (route-handler/redirect-to-page! (:block/uuid block)))
+
+                                            (ldb/journal? block)
                                             (.preventDefault e)
                                             (.preventDefault e)
-                                            (route-handler/redirect-to-page! (:block/uuid block)))
-                                          (ldb/journal? block)
-                                          (.preventDefault e)
-                                          :else
-                                          (block-content-on-pointer-down e block block-id content edit-input-id config)))))]
+
+                                            :else
+                                            (block-content-on-pointer-down e block block-id content edit-input-id config))))))]
     [:div.block-content.inline
     [:div.block-content.inline
      (cond-> {:id (str "block-content-" uuid)
      (cond-> {:id (str "block-content-" uuid)
               :on-pointer-up (fn [e]
               :on-pointer-up (fn [e]

+ 3 - 8
src/main/frontend/components/page.cljs

@@ -422,7 +422,7 @@
 
 
 (rum/defcs db-page-title < rum/reactive
 (rum/defcs db-page-title < rum/reactive
   (rum/local false ::hover?)
   (rum/local false ::hover?)
-  [state repo page whiteboard-page? sidebar? container-id]
+  [state page whiteboard-page? sidebar? container-id]
   (let [*hover? (::hover? state)
   (let [*hover? (::hover? state)
         hover? (rum/react *hover?)]
         hover? (rum/react *hover?)]
     [:div.ls-page-title.flex.flex-1.w-full.content.items-start
     [:div.ls-page-title.flex.flex-1.w-full.content.items-start
@@ -430,12 +430,7 @@
       :on-pointer-down (fn [e]
       :on-pointer-down (fn [e]
                          (when (util/right-click? e)
                          (when (util/right-click? e)
                            (state/set-state! :page-title/context {:page (:block/title page)
                            (state/set-state! :page-title/context {:page (:block/title page)
-                                                                  :page-entity page})))
-      :on-click (fn [e]
-                  (when-not (= (.-nodeName (.-target e)) "INPUT")
-                    (when (gobj/get e "shiftKey")
-                      (.preventDefault e)
-                      (state/sidebar-add-block! repo (:db/id page) :page))))}
+                                                                  :page-entity page})))}
 
 
      [:div.w-full.relative {:on-mouse-over #(reset! *hover? true)
      [:div.w-full.relative {:on-mouse-over #(reset! *hover? true)
                             :on-mouse-leave (fn []
                             :on-mouse-leave (fn []
@@ -598,7 +593,7 @@
                   (page-blocks-collapse-control title *control-show? *all-collapsed?)])
                   (page-blocks-collapse-control title *control-show? *all-collapsed?)])
                (when (and (not whiteboard?) (ldb/page? page))
                (when (and (not whiteboard?) (ldb/page? page))
                  (if db-based?
                  (if db-based?
-                   (db-page-title repo page whiteboard-page? sidebar? (:container-id state))
+                   (db-page-title page whiteboard-page? sidebar? (:container-id state))
                    (page-title-cp page {:journal? journal?
                    (page-title-cp page {:journal? journal?
                                         :fmt-journal? fmt-journal?
                                         :fmt-journal? fmt-journal?
                                         :preview? preview?})))
                                         :preview? preview?})))