' : '').append(span);
if (bookmarkNode.children && bookmarkNode.children.length > 0) {
li.append(dumpTreeNodes(bookmarkNode.children, query));
}
return li;
}
document.addEventListener('DOMContentLoaded', function () {
dumpBookmarks();
});
}
// https://developer.chrome.com/extensions/examples/api/browserAction/make_page_red/background.js
function pageRedder() {
chrome.browserAction.onClicked.addListener(function (tab) {
// No tabs or host permissions needed!
console.log('Turning ' + tab.url + ' red!');
chrome.tabs.executeScript({
code: 'document.body.style.backgroundColor="red"'
});
});
}
// https://developer.chrome.com/extensions/examples/api/browserAction/print/background.js
function printPage() {
chrome.browserAction.onClicked.addListener(function (tab) {
var action_url = "javascript:window.print();";
chrome.tabs.update(tab.id, { url: action_url });
});
}
// https://developer.chrome.com/extensions/examples/extensions/catblock/background.js
function catBlock () {
var loldogs: string[];
chrome.webRequest.onBeforeRequest.addListener(
function(info) {
console.log("Cat intercepted: " + info.url);
// Redirect the lolcal request to a random loldog URL.
var i = Math.round(Math.random() * loldogs.length);
return {redirectUrl: loldogs[i]};
},
// filters
{
urls: [
"https://i.chzbgr.com/*"
],
types: ["image"]
},
// extraInfoSpec
["blocking"]);
}
// contrived settings example
function proxySettings() {
chrome.proxy.settings.get({ incognito: false }, (details) => {
var val = details.value;
var level: string = details.levelOfControl;
var incognito: boolean = details.incognitoSpecific;
});
// bare minimum set call
chrome.proxy.settings.set({ value: 'something' });
// add a scope and callback
chrome.proxy.settings.set({
value: 'something',
scope: 'regular'
}, () => {});
chrome.proxy.settings.clear({});
// clear with a scope set
chrome.proxy.settings.clear({ scope: 'regular' });
}