about summary refs log tree commit diff stats
path: root/src/pages/popup_src
diff options
context:
space:
mode:
Diffstat (limited to 'src/pages/popup_src')
-rw-r--r--src/pages/popup_src/Buttons.svelte30
-rw-r--r--src/pages/popup_src/components/Switch.svelte5
2 files changed, 30 insertions, 5 deletions
diff --git a/src/pages/popup_src/Buttons.svelte b/src/pages/popup_src/Buttons.svelte
index bfa162f8..0b454675 100644
--- a/src/pages/popup_src/Buttons.svelte
+++ b/src/pages/popup_src/Buttons.svelte
@@ -41,7 +41,14 @@
 
 <div class={document.body.dir}>
   {#if redirect}
-    <Row class="interactive" on:click={() => browser.runtime.sendMessage("redirectTab")}>
+    <Row
+      class="interactive"
+      on:click={() => {
+        browser.runtime.sendMessage("redirectTab", () => {
+          window.close()
+        })
+      }}
+    >
       <Label>{browser.i18n.getMessage("redirect") || "Redirect"}</Label>
       <RedirectIcon />
     </Row>
@@ -50,7 +57,10 @@
   {#if switchInstance}
     <Row
       class="interactive"
-      on:click={async () => browser.tabs.update({ url: await servicesHelper.switchInstance(url) })}
+      on:click={async () =>
+        browser.tabs.update({ url: await servicesHelper.switchInstance(url) }, () => {
+          window.close()
+        })}
     >
       <Label>{browser.i18n.getMessage("switchInstance") || "Switch Instance"}</Label>
       <SwitchInstanceIcon />
@@ -62,7 +72,13 @@
       <Label>{browser.i18n.getMessage("copyOriginal") || "Copy Original"}</Label>
       <CopyIcon />
     </Row>
-    <Row class="interactive" on:click={() => browser.runtime.sendMessage("reverseTab")}>
+    <Row
+      class="interactive"
+      on:click={() =>
+        browser.runtime.sendMessage("reverseTab", () => {
+          window.close()
+        })}
+    >
       <Label>{browser.i18n.getMessage("redirectToOriginal" || "Redirect to Original")}</Label>
       <RedirectToOriginalIcon />
     </Row>
@@ -85,7 +101,13 @@
 
   <hr />
 
-  <Row class="interactive" on:click={() => window.open(browser.runtime.getURL("pages/options/index.html"), "_blank")}>
+  <Row
+    class="interactive"
+    on:click={() =>
+      browser.tabs.create({ url: browser.runtime.getURL("pages/options/index.html") }, () => {
+        window.close()
+      })}
+  >
     <Label>{browser.i18n.getMessage("settings")}</Label>
     <SettingsIcon />
   </Row>
diff --git a/src/pages/popup_src/components/Switch.svelte b/src/pages/popup_src/components/Switch.svelte
index e581e5f4..42a86403 100644
--- a/src/pages/popup_src/components/Switch.svelte
+++ b/src/pages/popup_src/components/Switch.svelte
@@ -28,7 +28,10 @@
   <div
     class="interactive"
     on:keydown={null}
-    on:click={() => window.open(browser.runtime.getURL(_config.services[serviceKey].url), "_blank")}
+    on:click={() =>
+      browser.tabs.create({ url: browser.runtime.getURL(_config.services[serviceKey].url) }, () => {
+        window.close()
+      })}
   >
     <ServiceIcon details={{ value: serviceKey, label: _config.services[serviceKey].name }} />
     <Label>{_config.services[serviceKey].name}</Label>