i don't know. it's a cool poc.

This commit is contained in:
s2
2017-12-11 16:06:13 +01:00
parent 21a0f24eb6
commit 51a5c0407e

View File

@@ -51,6 +51,8 @@ var registerToTST = async function() {
// The name of your addon (string, optional) // The name of your addon (string, optional)
name: MY_EXTENSION_NAME name: MY_EXTENSION_NAME
}); });
updateAllColorsOnAllTabs();
} catch (e) { } catch (e) {
// TST is not available // TST is not available
} }
@@ -78,6 +80,25 @@ var getTabParent = (tabs, id, currentTopLevelTabPos) => {
} }
}; };
var updateAllColorsOnAllTabs = async () => {
let allWindows = await browser.windows.getAll();
allWindows.forEach(async w => {
var tstTabs = await browser.runtime.sendMessage(kTST_ID, {
type: 'get-tree',
window: w.id
});
for (let i = 0; i < tstTabs.length; i++) {
if (tstTabs[i].status === 'complete') {
browser.tabs.executeScript(tstTabs[i].id, {
code: '(' + changeIcon.toString() + ')("' + generateRandomColor(getTabParent(tstTabs, tstTabs[i].id)) + '")'
});
}
}
});
}
//events //events
//register to tst //register to tst
browser.runtime.onMessageExternal.addListener((aMessage, aSender) => { browser.runtime.onMessageExternal.addListener((aMessage, aSender) => {
@@ -98,12 +119,9 @@ browser.tabs.onUpdated.addListener(async (tabId, changeInfo, tab) => {
}); });
if (tab.status === 'complete') { if (tab.status === 'complete') {
console.log(changeIcon.toString() + '(' + generateRandomColor(getTabParent(tstTab, tab.id)) + ')');
browser.tabs.executeScript(tab.id, { browser.tabs.executeScript(tab.id, {
code: '(' + changeIcon.toString() + ')("' + generateRandomColor(getTabParent(tstTab, tab.id)) + '")' code: '(' + changeIcon.toString() + ')("' + generateRandomColor(getTabParent(tstTab, tab.id)) + '")'
}); });
changeIcon(generateRandomColor(getTabParent(tstTab, tab.id)));
} }
}); });