Giant blob of minor changes
[dotfiles/.git] / .config / BraveSoftware / Brave-Browser / Default / Extensions / cimiefiiaegbelhefglklhhakcgmhkai / 1.7.6_0 / extension-tabsrunner.js
diff --git a/.config/BraveSoftware/Brave-Browser/Default/Extensions/cimiefiiaegbelhefglklhhakcgmhkai/1.7.6_0/extension-tabsrunner.js b/.config/BraveSoftware/Brave-Browser/Default/Extensions/cimiefiiaegbelhefglklhhakcgmhkai/1.7.6_0/extension-tabsrunner.js
deleted file mode 100644 (file)
index 143fcd3..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
-    Copyright (C) 2017 Kai Uwe Broulik <kde@privat.broulik.de>
-
-    This program is free software; you can redistribute it and/or
-    modify it under the terms of the GNU General Public License as
-    published by the Free Software Foundation; either version 3 of
-    the License, or (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-addCallback("tabsrunner", "activate", function (message) {
-    var tabId = message.tabId;
-
-    console.log("Tabs Runner requested to activate tab with id", tabId);
-
-    raiseTab(tabId);
-});
-
-addCallback("tabsrunner", "setMuted", function (message) {
-
-    var tabId = message.tabId;
-    var muted = message.muted;
-
-    chrome.tabs.update(tabId, {muted: muted}, function (tab) {
-
-        if (chrome.runtime.lastError || !tab) { // this "lastError" stuff feels so archaic
-            // failed to mute/unmute
-            return;
-        }
-    });
-
-});
-
-// only forward certain tab properties back to our host
-var whitelistedTabProperties = [
-    "id", "active", "audible", "favIconUrl", "incognito", "title", "url", "mutedInfo"
-];
-
-// FIXME We really should enforce some kind of security policy, so only e.g. plasmashell and krunner
-// may access your tabs
-addCallback("tabsrunner", "getTabs", function (message) {
-    chrome.tabs.query({}, function (tabs) {
-        // remove incognito tabs and properties not in whitelist
-        var filteredTabs = tabs;
-
-        // Firefox before 67 runs extensions in incognito by default
-        // but we keep running after an update, so exclude those tabs for it
-        if (IS_FIREFOX) {
-            filteredTabs = filteredTabs.filter(function (tab) {
-                return !tab.incognito;
-            });
-        }
-
-        var filteredTabs = filterArrayObjects(filteredTabs, whitelistedTabProperties);
-
-        // Shared between the callbacks
-        var total = filteredTabs.length;
-
-        var sendTabsIfComplete = function() {
-            if (--total > 0) {
-                return;
-            }
-
-            port.postMessage({
-                subsystem: "tabsrunner",
-                event: "gotTabs",
-                tabs: filteredTabs
-            });
-        };
-
-        for (let tabIndex in filteredTabs) {
-            let currentIndex = tabIndex; // Not shared
-            var favIconUrl = filteredTabs[tabIndex].favIconUrl;
-
-            if (!favIconUrl) {
-                sendTabsIfComplete();
-            } else if (favIconUrl.match(/^data:image/)) {
-                // Already a data URL
-                filteredTabs[currentIndex].favIconData = favIconUrl;
-                filteredTabs[currentIndex].favIconUrl = "";
-                sendTabsIfComplete();
-            } else {
-                // Send a request to fill the cache (=no timeout)
-                let xhrForCache = new XMLHttpRequest();
-                xhrForCache.open("GET", favIconUrl);
-                xhrForCache.send();
-
-                // Try to fetch from (hopefully) the cache (100ms timeout)
-                let xhr = new XMLHttpRequest();
-                xhr.onreadystatechange = function() {
-                    if (xhr.readyState != 4) {
-                        return;
-                    }
-
-                    if (!xhr.response) {
-                        filteredTabs[currentIndex].favIconData = "";
-                        sendTabsIfComplete();
-                        return;
-                    }
-
-                    var reader = new FileReader();
-                    reader.onloadend = function() {
-                        filteredTabs[currentIndex].favIconData = reader.result;
-                        sendTabsIfComplete();
-                    }
-                    reader.readAsDataURL(xhr.response);
-                };
-                xhr.open('GET', favIconUrl);
-                xhr.responseType = 'blob';
-                xhr.timeout = 100;
-                xhr.send();
-            }
-        }
-    });
-});