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)
This commit is contained in:
@@ -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', '')"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -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)
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user