From 8c3c7de871ea792719e9456858e828869b16fa38 Mon Sep 17 00:00:00 2001 From: Chris0Jeky Date: Sun, 29 Mar 2026 17:36:20 +0100 Subject: [PATCH 1/3] fix: reduce label and drag-handle visual noise (#522) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Hide "Drag card" text on the drag handle by default; text fades in only when the handle is hovered, letting the dotted-grid icon carry affordance in compact mode - Add a colour swatch (3×3 rounded dot) next to each label name in the CardModal picker so label colour is visible before the row is selected - Add native tooltip to "Precision Mode Active" sidebar subtitle explaining the mode and pointing users to Preferences --- .../taskdeck-web/src/components/board/CardItem.vue | 12 +++++++++++- .../taskdeck-web/src/components/board/CardModal.vue | 6 ++++++ .../src/components/shell/ShellSidebar.vue | 5 ++++- 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/frontend/taskdeck-web/src/components/board/CardItem.vue b/frontend/taskdeck-web/src/components/board/CardItem.vue index ffb25fe4e..e9f1b4dfb 100644 --- a/frontend/taskdeck-web/src/components/board/CardItem.vue +++ b/frontend/taskdeck-web/src/components/board/CardItem.vue @@ -83,7 +83,7 @@ function isOverdue(dateString: string | null): boolean { - Drag card + Drag card @@ -203,6 +203,16 @@ function isOverdue(dateString: string | null): boolean { font-weight: 600; text-transform: uppercase; letter-spacing: 0.2em; + transition: opacity var(--td-transition-fast); +} + +/* Hide "Drag card" text by default; reveal only on drag-handle hover */ +.td-board-card__drag-label--hidden { + opacity: 0; +} + +.td-card-drag-handle:hover .td-board-card__drag-label--hidden { + opacity: 1; } /* ── Badge row ── */ diff --git a/frontend/taskdeck-web/src/components/board/CardModal.vue b/frontend/taskdeck-web/src/components/board/CardModal.vue index 3a9cd6790..d906e7551 100644 --- a/frontend/taskdeck-web/src/components/board/CardModal.vue +++ b/frontend/taskdeck-web/src/components/board/CardModal.vue @@ -424,6 +424,12 @@ onBeforeUnmount(() => { :value="label.id" class="w-4 h-4 text-primary border-outline-variant rounded focus:ring-primary/50" /> + +