diff --git a/frontend/src/components/tabs/TabContextMenu.vue b/frontend/src/components/tabs/TabContextMenu.vue index 3473232..f53b20f 100644 --- a/frontend/src/components/tabs/TabContextMenu.vue +++ b/frontend/src/components/tabs/TabContextMenu.vue @@ -16,22 +16,22 @@
@@ -136,7 +136,7 @@ onUnmounted(() => { border-radius: 4px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); overflow: hidden; - min-width: 140px; + min-width: 100px; user-select: none; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; } @@ -147,7 +147,7 @@ onUnmounted(() => { padding: 8px 12px; cursor: pointer; font-size: 12px; - color: var(--text-primary); + color: var(--text-muted); transition: all 0.15s ease; gap: 8px; @@ -165,7 +165,7 @@ onUnmounted(() => { flex-shrink: 0; width: 12px; height: 12px; - color: var(--text-secondary); + color: var(--text-muted); transition: color 0.15s ease; .menu-item:hover & { @@ -178,51 +178,4 @@ onUnmounted(() => { font-weight: 400; flex: 1; } - -/* 主题适配 */ -:root[data-theme="dark"] .tab-context-menu { - background-color: var(--bg-secondary); - border-color: var(--border-color); - box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3); - - .menu-item { - color: var(--text-primary); - - &:hover { - background-color: var(--toolbar-button-hover); - color: #ffffff; - } - } - - .menu-icon { - color: var(--text-secondary); - - .menu-item:hover & { - color: #ffffff; - } - } -} - -:root[data-theme="light"] .tab-context-menu { - background-color: var(--bg-secondary); - border-color: var(--border-color); - box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); - - .menu-item { - color: var(--text-primary); - - &:hover { - background-color: var(--toolbar-button-hover); - color: #000000; - } - } - - .menu-icon { - color: var(--text-secondary); - - .menu-item:hover & { - color: #000000; - } - } -} \ No newline at end of file diff --git a/frontend/src/components/tabs/TabItem.vue b/frontend/src/components/tabs/TabItem.vue index 5d73d92..2e8cb3c 100644 --- a/frontend/src/components/tabs/TabItem.vue +++ b/frontend/src/components/tabs/TabItem.vue @@ -236,7 +236,7 @@ const handleContextMenu = (event: MouseEvent) => { &:hover { background-color: var(--error-color); - color: white; + color: var(--text-muted); opacity: 1 !important; } diff --git a/frontend/src/stores/documentStore.ts b/frontend/src/stores/documentStore.ts index 966ec95..78e6414 100644 --- a/frontend/src/stores/documentStore.ts +++ b/frontend/src/stores/documentStore.ts @@ -35,6 +35,12 @@ export const useDocumentStore = defineStore('document', () => { // === 错误处理 === const setError = (docId: number, message: string) => { selectorError.value = {docId, message}; + // 3秒后自动清除错误状态 + setTimeout(() => { + if (selectorError.value?.docId === docId) { + selectorError.value = null; + } + }, 3000); }; const clearError = () => { diff --git a/frontend/src/views/editor/Editor.vue b/frontend/src/views/editor/Editor.vue index 28b6287..5c00b2d 100644 --- a/frontend/src/views/editor/Editor.vue +++ b/frontend/src/views/editor/Editor.vue @@ -1,5 +1,5 @@