From 2bc2311212a2d3b1c8497c202ed96cda2b326136 Mon Sep 17 00:00:00 2001 From: kolaente Date: Sat, 22 Nov 2025 12:10:58 +0100 Subject: [PATCH] feat: show task card preview when hovering over task title in list and table view (#1863) --- .../components/project/views/ProjectTable.vue | 18 +- .../tasks/partials/CommentCount.vue | 46 +++ .../components/tasks/partials/KanbanCard.vue | 30 +- .../tasks/partials/SingleTaskInProject.vue | 50 +-- .../tasks/partials/TaskGlanceTooltip.vue | 313 ++++++++++++++++++ 5 files changed, 391 insertions(+), 66 deletions(-) create mode 100644 frontend/src/components/tasks/partials/CommentCount.vue create mode 100644 frontend/src/components/tasks/partials/TaskGlanceTooltip.vue diff --git a/frontend/src/components/project/views/ProjectTable.vue b/frontend/src/components/project/views/ProjectTable.vue index 9b5001715..2ad659c0a 100644 --- a/frontend/src/components/project/views/ProjectTable.vue +++ b/frontend/src/components/project/views/ProjectTable.vue @@ -207,9 +207,11 @@ /> - - {{ t.title }} - + + + {{ t.title }} + + - - - {{ t.commentCount }} - + + + + {{ task.commentCount }} + + + + + + + diff --git a/frontend/src/components/tasks/partials/KanbanCard.vue b/frontend/src/components/tasks/partials/KanbanCard.vue index c8c1b09e7..ff9e9644e 100644 --- a/frontend/src/components/tasks/partials/KanbanCard.vue +++ b/frontend/src/components/tasks/partials/KanbanCard.vue @@ -84,16 +84,12 @@ v-if="task.attachments.length > 0" class="icon" > - - - - - {{ task.commentCount }} + + diff --git a/frontend/src/components/tasks/partials/SingleTaskInProject.vue b/frontend/src/components/tasks/partials/SingleTaskInProject.vue index d7fb9dae3..a21f4364f 100644 --- a/frontend/src/components/tasks/partials/SingleTaskInProject.vue +++ b/frontend/src/components/tasks/partials/SingleTaskInProject.vue @@ -49,14 +49,16 @@ class="pis-2 mie-1" /> - - {{ task.title }} - + + + {{ task.title }} + + - - - {{ task.commentCount }} - + @@ -198,8 +196,10 @@ import type {ITask} from '@/modelTypes/ITask' import PriorityLabel from '@/components/tasks/partials/PriorityLabel.vue' import Labels from '@/components/tasks/partials/Labels.vue' +import TaskGlanceTooltip from '@/components/tasks/partials/TaskGlanceTooltip.vue' import DeferTask from '@/components/tasks/partials/DeferTask.vue' import ChecklistSummary from '@/components/tasks/partials/ChecklistSummary.vue' +import CommentCount from '@/components/tasks/partials/CommentCount.vue' import ProgressBar from '@/components/misc/ProgressBar.vue' import BaseButton from '@/components/base/BaseButton.vue' @@ -573,22 +573,4 @@ defineExpose({ border: 1px solid var(--grey-200); } } - -.comment-count-icon { - display: inline-flex; - align-items: center; - gap: 0.25rem; - font-size: 0.875rem; - color: var(--grey-500); - - .comment-count-badge { - font-weight: 600; - font-size: 0.75rem; - line-height: 1; - } - - &:hover { - color: var(--primary); - } -} diff --git a/frontend/src/components/tasks/partials/TaskGlanceTooltip.vue b/frontend/src/components/tasks/partials/TaskGlanceTooltip.vue new file mode 100644 index 000000000..1b84b4e2c --- /dev/null +++ b/frontend/src/components/tasks/partials/TaskGlanceTooltip.vue @@ -0,0 +1,313 @@ + + + + +