From edd77182a5348b53d7d67fc2db3cb0cf67bce47d Mon Sep 17 00:00:00 2001 From: Lykin <137850705+tiny-craft@users.noreply.github.com> Date: Tue, 7 Jan 2025 16:24:12 +0800 Subject: [PATCH] fix: can not switch to an open connection from connection tree view --- frontend/src/components/sidebar/ConnectionTree.vue | 1 + frontend/src/stores/tab.js | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/frontend/src/components/sidebar/ConnectionTree.vue b/frontend/src/components/sidebar/ConnectionTree.vue index 5a5c22a1..657f32eb 100644 --- a/frontend/src/components/sidebar/ConnectionTree.vue +++ b/frontend/src/components/sidebar/ConnectionTree.vue @@ -295,6 +295,7 @@ const openConnection = async (name) => { tabStore.upsertTab({ server: name, db: browserStore.getSelectedDB(name), + forceSwitch: true, }) } } catch (e) { diff --git a/frontend/src/stores/tab.js b/frontend/src/stores/tab.js index f451d079..3d34956e 100644 --- a/frontend/src/stores/tab.js +++ b/frontend/src/stores/tab.js @@ -161,6 +161,7 @@ const useTabStore = defineStore('tab', { * @param {boolean} [clearValue] * @param {string} format * @param {string} decode + * @param {boolean} forceSwitch * @param {*} [value] */ upsertTab({ @@ -177,6 +178,7 @@ const useTabStore = defineStore('tab', { clearValue, format = '', decode = '', + forceSwitch = false, }) { let tabIndex = findIndex(this.tabList, { name: server }) if (tabIndex === -1) { @@ -221,6 +223,9 @@ const useTabStore = defineStore('tab', { if (clearValue === true) { tab.value = undefined } + if (forceSwitch === true) { + this._setActivatedIndex(tabIndex, true, subTab) + } } },