diff options
| author | mrmr1993 | 2017-12-02 18:42:35 +0000 |
|---|---|---|
| committer | mrmr1993 | 2017-12-02 18:42:35 +0000 |
| commit | 601aad57c843ff1368c5a9e152ea609431cac1a0 (patch) | |
| tree | 46f82dea8bad23852aa131aeedab286bb6086b5c /pages | |
| parent | ff615efa9a41f1de5df1a6eea0e8a3c809f91b4b (diff) | |
| download | vimium-601aad57c843ff1368c5a9e152ea609431cac1a0.tar.bz2 | |
Show browser-blocking complaint in the popup for empty portForTab object
To test the difference:
* load an unblocked URL (e.g. https://www.example.com) in a tab
* open the popup, see that the exclusion rules show as expected
* navigate the tab to a blocked URL (e.g. chrome://extensions)
* open the popup again
Before this commit, the popup still shows the exclusion rules, because
there is still a portForTabs object associated with the tabId.
This commit adds a second check to see if the object is empty, and the
message shows as expected, because all of the ports have been closed and
cleared from the object.
Diffstat (limited to 'pages')
| -rw-r--r-- | pages/options.coffee | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/pages/options.coffee b/pages/options.coffee index 529743f4..9e95bcd3 100644 --- a/pages/options.coffee +++ b/pages/options.coffee @@ -277,11 +277,8 @@ initPopupPage = -> exclusions = null document.getElementById("optionsLink").setAttribute "href", chrome.runtime.getURL("pages/options.html") - # As the active URL, we choose the most recently registered URL from a frame in the tab, or the tab's own - # URL. - url = chrome.extension.getBackgroundPage().urlForTab[tab.id] || tab.url - - unless chrome.extension.getBackgroundPage().portsForTab[tab.id] + tabPorts = chrome.extension.getBackgroundPage().portsForTab[tab.id] + unless tabPorts and Object.keys(tabPorts).length > 0 # The browser has disabled Vimium on this page. Place a message explaining this into the popup. document.body.innerHTML = """ <div style="width: 400px; margin: 5px;"> @@ -300,6 +297,10 @@ initPopupPage = -> """ return + # As the active URL, we choose the most recently registered URL from a frame in the tab, or the tab's own + # URL. + url = chrome.extension.getBackgroundPage().urlForTab[tab.id] || tab.url + updateState = -> rule = bgExclusions.getRule url, exclusions.readValueFromElement() $("state").innerHTML = "Vimium will " + |
