浏览代码

fix: prevent opening multiple Automa dashboard

Ahmad Kholid 2 年之前
父节点
当前提交
723bf1fd0a
共有 1 个文件被更改,包括 12 次插入0 次删除
  1. 12 0
      src/newtab/App.vue

+ 12 - 0
src/newtab/App.vue

@@ -212,6 +212,18 @@ browser.runtime.onMessage.addListener(({ type, data }) => {
 
 (async () => {
   try {
+    const tabs = await browser.tabs.query({
+      url: browser.runtime.getURL('/newtab.html/*'),
+    });
+    if (tabs.length > 1) {
+      const firstTab = tabs.shift();
+      await browser.windows.update(firstTab.windowId, { focused: true });
+      await browser.tabs.update(firstTab.id, { active: true });
+
+      await browser.tabs.remove(tabs.map((tab) => tab.id));
+      return;
+    }
+
     const { isFirstTime } = await browser.storage.local.get('isFirstTime');
     isUpdated.value = !isFirstTime && compare(currentVersion, prevVersion, '>');