From a94e4c4faaa5fafe2ad897094fcdcac669f87875 Mon Sep 17 00:00:00 2001
From: rui hildt <rui@mullvad.net>
Date: Wed, 11 Dec 2024 15:35:38 +0100
Subject: [PATCH] Fix default active proxy tab in Popup

---
 src/components/Proxy/HomeProxyStatus.vue | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/src/components/Proxy/HomeProxyStatus.vue b/src/components/Proxy/HomeProxyStatus.vue
index 41109b42..a8e8c8b0 100644
--- a/src/components/Proxy/HomeProxyStatus.vue
+++ b/src/components/Proxy/HomeProxyStatus.vue
@@ -81,12 +81,21 @@ const subDomainProxyEnabled = computed(() => {
 const lastClickedTab = ref<string | null>(null);
 
 const defaultActiveTab = computed(() => {
-  if (tabDomain.value.hasSubdomain && hasSubDomainProxy.value && subDomainProxyEnabled.value) {
+  // Check subdomain first (active proxy or excluded)
+  if (
+    tabDomain.value.hasSubdomain &&
+    (subDomainProxyEnabled.value || excludedHosts.value.includes(tabDomain.value.subDomain))
+  ) {
     return 'current-sub-domain';
   }
-  if (domainProxyDetails.value?.socksEnabled || currentHostExcluded.value) {
+  // Check domain (active proxy or excluded)
+  if (
+    domainProxyDetails.value?.socksEnabled ||
+    excludedHosts.value.includes(tabDomain.value.domain)
+  ) {
     return 'current-domain';
   }
+  // Default to all websites
   return 'all-websites';
 });
 
@@ -116,7 +125,7 @@ const handleRemoveProxy = (host: string) => {
   lastClickedTab.value = defaultActiveTab.value;
 };
 
-watch([currentHostProxyEnabled, subDomainProxyEnabled, domainProxyDetails], () => {
+watch([currentHostProxyEnabled, subDomainProxyEnabled, domainProxyDetails, excludedHosts], () => {
   lastClickedTab.value = null;
 });
 </script>