From fd59656bb38764b5def17153dccbfb41ee53dae8 Mon Sep 17 00:00:00 2001
From: Thomas Rientjes <synzvato@protonmail.com>
Date: Tue, 31 Oct 2017 13:10:24 -0300
Subject: [PATCH] Improve tab URL detection logic

---
 core/state-manager.js | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/core/state-manager.js b/core/state-manager.js
index 2f1d80c..e186202 100644
--- a/core/state-manager.js
+++ b/core/state-manager.js
@@ -122,7 +122,10 @@ stateManager._createTab = function (tab) {
     };
 
     chrome.webRequest.onBeforeRequest.addListener(function (requestDetails) {
+
+        let tab = stateManager.tabs[tabIdentifier].details || {};
         return interceptor.handleRequest(requestDetails, tabIdentifier, tab);
+    
     }, requestFilters, [BLOCKING_ACTION]);
 };
 
@@ -244,6 +247,17 @@ chrome.storage.local.get('showIconBadge', function (items) {
 chrome.tabs.onCreated.addListener(stateManager._createTab);
 chrome.tabs.onRemoved.addListener(stateManager._removeTab);
 
+chrome.webRequest.onBeforeRequest.addListener(function (requestDetails) {
+
+    if (requestDetails.tabId !== -1) {
+        
+        stateManager.tabs[requestDetails.tabId].details = {
+            'url': requestDetails.url
+        }
+    }
+
+}, {'types': ['main_frame'], 'urls': ['*://*/*']});
+
 chrome.webNavigation.onCommitted.addListener(stateManager._updateTab, {
     url: [{urlContains: ':'}]
 });
-- 
GitLab