diff --git a/apps/desktop/src/App.vue b/apps/desktop/src/App.vue
index 08b757ed94..c5634d3075 100644
--- a/apps/desktop/src/App.vue
+++ b/apps/desktop/src/App.vue
@@ -339,6 +339,7 @@ watch(
);
}
if (id) newQueryContextSource.value = "tab";
+ if (id && showDriverStore.value) showDriverStore.value = false;
selectedSql.value = "";
activeOutputView.value = "result";
if (id) queryStore.reloadEvictedTab(id);
diff --git a/apps/desktop/src/components/sidebar/ConnectionTree.vue b/apps/desktop/src/components/sidebar/ConnectionTree.vue
index 7bfe194acf..0ff6964718 100644
--- a/apps/desktop/src/components/sidebar/ConnectionTree.vue
+++ b/apps/desktop/src/components/sidebar/ConnectionTree.vue
@@ -13,7 +13,7 @@ import { usesTreeSchemaMode } from "@/lib/databaseFeatureSupport";
import { connectionUsesDatabaseObjectTreeMode, effectiveDatabaseTypeForConnection } from "@/lib/jdbcDialect";
import { activeTabSidebarTarget, findSidebarNodeForActiveTab, findSidebarNodeForTarget, findNodePathForTarget, scrollTopForSidebarNode, shouldScrollActiveSidebarSelection, type ActiveTabSidebarTarget } from "@/lib/sidebarActiveTabTarget";
import { findLoadedTableTargetForCandidate, queryContextTargetFromCandidate, queryCursorTableCandidate, type QueryCursorTableCandidate } from "@/lib/queryCursorTableTarget";
-import { SIDEBAR_TREE_ROW_HEIGHT, SIDEBAR_TREE_PRERENDER_COUNT, SIDEBAR_TREE_SCROLL_BUFFER, flattenTree, scrollTopForExpandedTreeNode, shouldAutoScrollExpandedTreeNode, shouldVirtualizeFlatTree, type FlatTreeNode } from "@/composables/useFlatTree";
+import { SIDEBAR_TREE_ROW_HEIGHT, SIDEBAR_TREE_PRERENDER_COUNT, SIDEBAR_TREE_SCROLL_BUFFER, flattenTree, shouldVirtualizeFlatTree, type FlatTreeNode } from "@/composables/useFlatTree";
import { sidebarTreeContextKey } from "@/lib/sidebarTreeContext";
import TreeItem from "./TreeItem.vue";
import { RecycleScroller } from "vue-virtual-scroller";
@@ -451,29 +451,6 @@ function onSearchToggle(node: TreeNode) {
searchCollapsedIds.value = next;
}
-async function onNodeToggled(node: TreeNode, wasExpanded: boolean) {
- if (wasExpanded || !node.isExpanded) return;
- if (!shouldAutoScrollExpandedTreeNode(node.type)) return;
-
- await nextTick();
-
- const expandedIndex = flatNodes.value.findIndex((item) => item.id === node.id);
- const insertedRowCount = flattenTree([node]).length - 1;
- const scroller = treeScrollerRef.value?.$el as HTMLElement | undefined;
- if (!scroller || expandedIndex < 0 || insertedRowCount <= 0) return;
-
- const nextScrollTop = scrollTopForExpandedTreeNode({
- expandedIndex,
- insertedRowCount,
- currentScrollTop: scroller.scrollTop,
- viewportHeight: scroller.clientHeight,
- });
-
- if (nextScrollTop !== scroller.scrollTop) {
- scroller.scrollTop = nextScrollTop;
- }
-}
-
function currentTreeScroller(): HTMLElement | null {
return ((useVirtualTree.value ? treeScrollerRef.value?.$el : plainTreeScrollerRef.value) as HTMLElement | undefined) ?? null;
}
@@ -630,16 +607,7 @@ defineExpose({ focusSearch, createNewGroup });
flow-mode
>
-