diff --git a/src/main/frontend/components/selection.cljs b/src/main/frontend/components/selection.cljs index eeba98c43e..e9412f08a2 100644 --- a/src/main/frontend/components/selection.cljs +++ b/src/main/frontend/components/selection.cljs @@ -10,7 +10,7 @@ [rum.core :as rum])) (rum/defc action-bar < rum/reactive - [& {:keys [on-cut on-copy selected-blocks hide-dots? button-border?] + [& {:keys [on-cut on-copy selected-blocks hide-dots? button-border? view-parent] :or {on-cut #(editor-handler/cut-selection-blocks true)}}] (when-not (or (state/sub :search/mode) (state/sub :ui/show-property-dialog?)) @@ -66,13 +66,14 @@ :select-opts {:show-new-when-not-exact-match? false} :on-dialog-close #(state/pub-event! [:editor/hide-action-bar])}]))) "Unset property")) - (shui/button - (assoc button-opts - :on-pointer-down (fn [e] - (util/stop e) - (on-cut) - (state/pub-event! [:editor/hide-action-bar]))) - (ui/icon "trash" {:size 13})) + (when-not (contains? #{:logseq.class/Page} (:db/ident view-parent)) + (shui/button + (assoc button-opts + :on-pointer-down (fn [e] + (util/stop e) + (on-cut) + (state/pub-event! [:editor/hide-action-bar]))) + (ui/icon "trash" {:size 13}))) (when-not hide-dots? (shui/button (assoc button-opts diff --git a/src/main/frontend/components/views.cljs b/src/main/frontend/components/views.cljs index b9e97f3d44..5d4840483f 100644 --- a/src/main/frontend/components/views.cljs +++ b/src/main/frontend/components/views.cljs @@ -584,7 +584,8 @@ {:on-cut #(on-delete-rows table selected-rows) :selected-blocks selected-rows :hide-dots? true - :button-border? true}))) + :button-border? true + :view-parent (:logseq.property/view-for (:view-entity table))}))) (rum/defc column-resizer [_column on-sized!] @@ -714,9 +715,10 @@ (case view-feature-type :class-objects (when (seq page-ids) - (let [tx-data (map (fn [pid] [:db/retract pid :block/tags (:db/id view-parent)]) page-ids)] - (when (seq tx-data) - (outliner-op/transact! tx-data {:outliner-op :save-block})))) + (when-not (= :logseq.class/Page (:db/ident view-parent)) + (let [tx-data (map (fn [pid] [:db/retract pid :block/tags (:db/id view-parent)]) page-ids)] + (when (seq tx-data) + (outliner-op/transact! tx-data {:outliner-op :save-block}))))) :property-objects ;; Relationships with built-in properties must not be deleted e.g. built-in? or parent