From 6fda5ebf96978ce4f5959c0b582372c0173e9b17 Mon Sep 17 00:00:00 2001 From: DarkPhoenix2704 Date: Mon, 19 Feb 2024 05:09:33 +0000 Subject: [PATCH] fix(nc-gui): scroll issue when more than 5 recent views --- packages/nc-gui/components/cmd-l/index.vue | 23 +++++++--------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/packages/nc-gui/components/cmd-l/index.vue b/packages/nc-gui/components/cmd-l/index.vue index a077a02df1..cee5ec3a34 100644 --- a/packages/nc-gui/components/cmd-l/index.vue +++ b/packages/nc-gui/components/cmd-l/index.vue @@ -64,14 +64,7 @@ onKeyUp('Enter', async () => { function scrollToTarget() { const element = document.querySelector('.cmdk-action.selected') - const headerOffset = 45 - const elementPosition = element?.getBoundingClientRect().top - const offsetPosition = elementPosition! + window.pageYOffset - headerOffset - - window.scrollTo({ - top: offsetPosition, - behavior: 'smooth', - }) + element?.scrollIntoView() } const moveUp = () => { @@ -91,13 +84,13 @@ const moveUp = () => { } else { selected.value = filteredViews.value[index - 1].tableID + filteredViews.value[index - 1].viewName const cmdOption = filteredViews.value[index - 1] - scrollToTarget() newView.value = { viewId: cmdOption.viewId ?? null, tableId: cmdOption.tableID, baseId: cmdOption.baseId, } + nextTick(() => scrollToTarget()) } } @@ -118,13 +111,12 @@ const moveDown = () => { selected.value = filteredViews.value[index + 1].tableID + filteredViews.value[index + 1].viewName const cmdOption = filteredViews.value[index + 1] - scrollToTarget() - newView.value = { viewId: cmdOption.viewId ?? null, tableId: cmdOption.tableID, baseId: cmdOption.baseId, } + nextTick(() => scrollToTarget()) } } @@ -134,8 +126,7 @@ const hide = () => { } onClickOutside(modalEl, () => { - search.value = '' - if (vOpen.value) hide() + hide() }) useEventListener('keydown', (e: KeyboardEvent) => { @@ -200,9 +191,9 @@ onMounted(() => {
Recent Views
-
+
No recent views
-
+
{
-
+