From bac5dcfe3d80f7aff52e2467db73943d38fec9e2 Mon Sep 17 00:00:00 2001 From: curo1305 Date: Tue, 16 Jun 2026 19:12:57 +0200 Subject: [PATCH] fix(10-13): escape modifier and capture-phase OS drop - SearchBar.vue: add .prevent.stop to @keydown.escape to suppress browser native blur (Gap 5) - OsDragOverlay.vue: register window drop listener with capture=true to fire before folder-row handlers (Gap 6) --- frontend/src/components/documents/SearchBar.vue | 2 +- frontend/src/components/layout/OsDragOverlay.vue | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/frontend/src/components/documents/SearchBar.vue b/frontend/src/components/documents/SearchBar.vue index fb08074..2bee61e 100644 --- a/frontend/src/components/documents/SearchBar.vue +++ b/frontend/src/components/documents/SearchBar.vue @@ -8,7 +8,7 @@ aria-label="Search documents" class="border border-gray-300 rounded-lg px-3 py-2 text-sm w-56 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:border-transparent" @input="emit('update:modelValue', $event.target.value)" - @keydown.escape="emit('update:modelValue', '')" + @keydown.escape.prevent.stop="emit('update:modelValue', '')" /> diff --git a/frontend/src/components/layout/OsDragOverlay.vue b/frontend/src/components/layout/OsDragOverlay.vue index d26b469..fcac7a0 100644 --- a/frontend/src/components/layout/OsDragOverlay.vue +++ b/frontend/src/components/layout/OsDragOverlay.vue @@ -53,13 +53,13 @@ export default { window.addEventListener('dragenter', this.onDragEnter) window.addEventListener('dragleave', this.onDragLeave) window.addEventListener('dragover', this.onDragOver) - window.addEventListener('drop', this.onDrop) + window.addEventListener('drop', this.onDrop, true) }, beforeUnmount() { window.removeEventListener('dragenter', this.onDragEnter) window.removeEventListener('dragleave', this.onDragLeave) window.removeEventListener('dragover', this.onDragOver) - window.removeEventListener('drop', this.onDrop) + window.removeEventListener('drop', this.onDrop, true) }, }