cross-platform support, and removed unnecessary function wrappers
This commit is contained in:
parent
9cd33f531b
commit
ea6c20ae51
@ -1,3 +1,9 @@
|
|||||||
|
// Cross-platform namespace support
|
||||||
|
window.browser = (function () {
|
||||||
|
return window.browser ||
|
||||||
|
window.msBrowser ||
|
||||||
|
window.chrome;
|
||||||
|
})();
|
||||||
|
|
||||||
var shuffle = function (array) {
|
var shuffle = function (array) {
|
||||||
var currentIndex = array.length;
|
var currentIndex = array.length;
|
||||||
@ -19,8 +25,8 @@ var shuffle = function (array) {
|
|||||||
return array;
|
return array;
|
||||||
};
|
};
|
||||||
|
|
||||||
chrome.browserAction.onClicked.addListener(function() {
|
browser.browserAction.onClicked.addListener(function() {
|
||||||
chrome.tabs.query({}, function(tabs) {
|
browser.tabs.query({}, function(tabs) {
|
||||||
let count = Math.floor(tabs.length / 2) + 1 // I don't remember why we need an extra +1 here, but it is necessary
|
let count = Math.floor(tabs.length / 2) + 1 // I don't remember why we need an extra +1 here, but it is necessary
|
||||||
var ok = confirm("Are you sure you want to close " + count + " tabs?")
|
var ok = confirm("Are you sure you want to close " + count + " tabs?")
|
||||||
if (ok) {
|
if (ok) {
|
||||||
@ -30,29 +36,21 @@ chrome.browserAction.onClicked.addListener(function() {
|
|||||||
for (tab in tabs) {
|
for (tab in tabs) {
|
||||||
tab_identifiers.push(tabs[tab].id)
|
tab_identifiers.push(tabs[tab].id)
|
||||||
}
|
}
|
||||||
chrome.tabs.remove(ids)
|
browser.tabs.remove(ids)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
function updateCount() {
|
function updateCount() {
|
||||||
chrome.tabs.query({}, function(tabs) {
|
browser.tabs.query({}, function(tabs) {
|
||||||
let count = Math.floor(tabs.length / 2)
|
let count = Math.floor(tabs.length / 2)
|
||||||
chrome.browserAction.setBadgeText({ text: "" + count })
|
browser.browserAction.setBadgeText({ text: "" + count })
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
chrome.tabs.onCreated.addListener(function() {
|
browser.tabs.onCreated.addListener(updateCount)
|
||||||
updateCount()
|
browser.tabs.onRemoved.addListener(updateCount)
|
||||||
})
|
browser.windows.onCreated.addListener(updateCount)
|
||||||
chrome.tabs.onRemoved.addListener(function() {
|
browser.windows.onRemoved.addListener(updateCount)
|
||||||
updateCount()
|
|
||||||
})
|
|
||||||
chrome.windows.onCreated.addListener(function() {
|
|
||||||
updateCount()
|
|
||||||
})
|
|
||||||
chrome.windows.onRemoved.addListener(function() {
|
|
||||||
updateCount()
|
|
||||||
})
|
|
||||||
|
|
||||||
updateCount()
|
updateCount()
|
||||||
|
Loading…
Reference in New Issue
Block a user