From cf31f1b9faa685e46973ee5a5b1b8ef87a582aa5 Mon Sep 17 00:00:00 2001 From: Tienson Qin Date: Tue, 1 Apr 2025 17:14:53 +0800 Subject: [PATCH] fix: display items count only for the current view --- src/main/frontend/components/views.cljs | 11 +++++++---- src/main/frontend/components/views.css | 4 ++++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/main/frontend/components/views.cljs b/src/main/frontend/components/views.cljs index 4c7926a032..4d3670061f 100644 --- a/src/main/frontend/components/views.cljs +++ b/src/main/frontend/components/views.cljs @@ -1399,7 +1399,7 @@ (db/entity [:block/uuid (:block/uuid result)])))) (rum/defc views-tab < rum/reactive db-mixins/query - [view-parent current-view {:keys [views items-count set-view-entity! set-views! view-feature-type show-items-count?]} hover?] + [view-parent current-view {:keys [views data items-count set-view-entity! set-data! set-views! view-feature-type show-items-count?]} hover?] [:div.views.flex.flex-row.items-center.flex-wrap.gap-2 (for [view* views] (let [view (db/sub-block (:db/id view*)) @@ -1433,7 +1433,9 @@ {:as-dropdown? true :align "start" :content-props {:onClick shui/popup-hide!}}) - (set-view-entity! view)))} + (do + (set-view-entity! view) + (set-data! nil))))} (let [display-type (or (:db/ident (get view :logseq.property.view/type)) :logseq.property.view/type.table)] (when-let [icon (:logseq.property/icon (db/entity display-type))] @@ -1443,7 +1445,7 @@ (if (= title "") "New view" title)) - (when (and show-items-count? (> items-count 0)) + (when (and current-view? show-items-count? (> items-count 0) (seq data)) [:span.text-muted-foreground.text-xs items-count])))) @@ -1602,7 +1604,8 @@ (if (and group-by-property (not (number? (first (:rows table))))) [:div.flex.flex-col.border-t.py-4 (ui/virtualized-list - {:custom-scroll-parent (gdom/getElement "main-content-container") + {:class (when list-view? "group-list-view") + :custom-scroll-parent (gdom/getElement "main-content-container") :increase-viewport-by {:top 300 :bottom 300} :compute-item-key (fn [idx] (str "table-group" idx)) diff --git a/src/main/frontend/components/views.css b/src/main/frontend/components/views.css index e58c9304cf..c3e943aeee 100644 --- a/src/main/frontend/components/views.css +++ b/src/main/frontend/components/views.css @@ -3,3 +3,7 @@ width: 107px; } } + +.group-list-view div[data-testid='virtuoso-item-list'] { + @apply flex flex-col gap-2; +}