|
|
@ -299,25 +299,39 @@ function scrollToSelectedResult() {
|
|
|
|
})
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
onKeyStroke('ArrowUp', (event) => {
|
|
|
|
function goRelativeItem(offset: number) {
|
|
|
|
event.preventDefault()
|
|
|
|
const resNum = results.value.length
|
|
|
|
selectedIndex.value--
|
|
|
|
selectedIndex.value = (selectedIndex.value + resNum + (offset % resNum)) % resNum
|
|
|
|
if (selectedIndex.value < 0) {
|
|
|
|
|
|
|
|
selectedIndex.value = results.value.length - 1
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
disableMouseOver.value = true
|
|
|
|
disableMouseOver.value = true
|
|
|
|
scrollToSelectedResult()
|
|
|
|
scrollToSelectedResult()
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
onKeyStroke('ArrowUp', (event) => {
|
|
|
|
|
|
|
|
event.preventDefault()
|
|
|
|
|
|
|
|
goRelativeItem(-1)
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
onKeyStroke('ArrowDown', (event) => {
|
|
|
|
onKeyStroke('ArrowDown', (event) => {
|
|
|
|
event.preventDefault()
|
|
|
|
event.preventDefault()
|
|
|
|
selectedIndex.value++
|
|
|
|
goRelativeItem(1)
|
|
|
|
if (selectedIndex.value >= results.value.length) {
|
|
|
|
})
|
|
|
|
selectedIndex.value = 0
|
|
|
|
|
|
|
|
|
|
|
|
const isMac = navigator.platform.toUpperCase().indexOf('MAC') >= 0
|
|
|
|
|
|
|
|
if (isMac) {
|
|
|
|
|
|
|
|
onKeyStroke('n', (event) => {
|
|
|
|
|
|
|
|
if (event.ctrlKey) {
|
|
|
|
|
|
|
|
event.preventDefault()
|
|
|
|
|
|
|
|
goRelativeItem(1)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
onKeyStroke('p', (event) => {
|
|
|
|
|
|
|
|
if (event.ctrlKey) {
|
|
|
|
|
|
|
|
event.preventDefault()
|
|
|
|
|
|
|
|
goRelativeItem(-1)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
disableMouseOver.value = true
|
|
|
|
|
|
|
|
scrollToSelectedResult()
|
|
|
|
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
const router = useRouter()
|
|
|
|
const router = useRouter()
|
|
|
|
|
|
|
|
|
|
|
@ -540,9 +554,18 @@ function formMarkRegex(terms: Set<string>) {
|
|
|
|
<kbd :aria-label="translate('modal.footer.navigateUpKeyAriaLabel')">
|
|
|
|
<kbd :aria-label="translate('modal.footer.navigateUpKeyAriaLabel')">
|
|
|
|
<span class="vpi-arrow-up navigate-icon" />
|
|
|
|
<span class="vpi-arrow-up navigate-icon" />
|
|
|
|
</kbd>
|
|
|
|
</kbd>
|
|
|
|
|
|
|
|
<span>/</span>
|
|
|
|
|
|
|
|
<kbd :aria-label="translate('modal.footer.navigateDownKeyAriaLabel')">
|
|
|
|
|
|
|
|
<span class="navigate-icon">ctrl-p</span>
|
|
|
|
|
|
|
|
</kbd>
|
|
|
|
|
|
|
|
<span>and</span>
|
|
|
|
<kbd :aria-label="translate('modal.footer.navigateDownKeyAriaLabel')">
|
|
|
|
<kbd :aria-label="translate('modal.footer.navigateDownKeyAriaLabel')">
|
|
|
|
<span class="vpi-arrow-down navigate-icon" />
|
|
|
|
<span class="vpi-arrow-down navigate-icon" />
|
|
|
|
</kbd>
|
|
|
|
</kbd>
|
|
|
|
|
|
|
|
<span>/</span>
|
|
|
|
|
|
|
|
<kbd :aria-label="translate('modal.footer.navigateDownKeyAriaLabel')">
|
|
|
|
|
|
|
|
<span class="navigate-icon">ctrl-n</span>
|
|
|
|
|
|
|
|
</kbd>
|
|
|
|
{{ translate('modal.footer.navigateText') }}
|
|
|
|
{{ translate('modal.footer.navigateText') }}
|
|
|
|
</span>
|
|
|
|
</span>
|
|
|
|
<span>
|
|
|
|
<span>
|
|
|
|