From 7ff887ff20024ce9eef29ba13be2955dff0114bb Mon Sep 17 00:00:00 2001 From: root Date: Fri, 26 Jun 2026 20:38:45 +0000 Subject: [PATCH] fix(web): make MDTODO rewrite visible as bounded workspace Issue #2216 requires a visible SPEC rewrite, not only component decomposition. Replace the card-like MDTODO shell with a compact framed workspace, pane separators, a true outline rail, a primary document pane, and a right report pane. Keep public API and web-probe testids intact. --- .../layout/SplitWorkspaceLayout.vue | 18 ++++- .../mdtodo/MdtodoCreateTaskDialog.vue | 11 ++- .../src/components/mdtodo/MdtodoPageShell.vue | 36 ++++++--- .../components/mdtodo/MdtodoReportPanel.vue | 15 ++-- .../src/components/mdtodo/MdtodoTaskPanel.vue | 78 ++++++++++--------- .../src/components/mdtodo/MdtodoTaskTree.vue | 43 +++++----- .../src/components/mdtodo/MdtodoToolbar.vue | 25 +++--- 7 files changed, 131 insertions(+), 95 deletions(-) diff --git a/web/hwlab-cloud-web/src/components/layout/SplitWorkspaceLayout.vue b/web/hwlab-cloud-web/src/components/layout/SplitWorkspaceLayout.vue index 552ce3df..167ebca3 100644 --- a/web/hwlab-cloud-web/src/components/layout/SplitWorkspaceLayout.vue +++ b/web/hwlab-cloud-web/src/components/layout/SplitWorkspaceLayout.vue @@ -142,6 +142,7 @@ function clamp(value: number, min: number, max: number): number { height: 100%; overflow: hidden; gap: 0; + background: #fff; } .split-workspace-pane, @@ -151,11 +152,24 @@ function clamp(value: number, min: number, max: number): number { overflow: hidden; } +.split-workspace-left { + border-right: 1px solid #d8e1e7; + background: #f8fafb; +} + +.split-workspace-main { + background: #fff; +} + +.split-workspace-right { + border-left: 1px solid #d8e1e7; + background: #f8fafb; +} + .split-workspace-resizer { min-width: 0; border-inline: 1px solid transparent; - border-radius: 999px; - background: linear-gradient(90deg, transparent 1px, #cbd8d2 2px, #cbd8d2 4px, transparent 5px); + background: linear-gradient(90deg, transparent 2px, #cbd6dd 3px, transparent 4px); cursor: col-resize; } diff --git a/web/hwlab-cloud-web/src/components/mdtodo/MdtodoCreateTaskDialog.vue b/web/hwlab-cloud-web/src/components/mdtodo/MdtodoCreateTaskDialog.vue index d88eafb0..d398b6d7 100644 --- a/web/hwlab-cloud-web/src/components/mdtodo/MdtodoCreateTaskDialog.vue +++ b/web/hwlab-cloud-web/src/components/mdtodo/MdtodoCreateTaskDialog.vue @@ -23,7 +23,7 @@ const emit = defineEmits<{