1 function load_settings() {
2 browser.storage.local.get({auto_close: true})
5 document.getElementById('auto-close').checked = v.auto_close === true;
6 //console.log('Success', v);
9 document.getElementById('auto-close').checked = true;
10 //console.log('Failure');
15 function save_settings() {
16 let v = document.getElementById('auto-close').checked;
17 browser.storage.local.set({
20 //console.log('stored', v);
24 if (!word) return word;
30 word = word.replace(/^[^a-zA-Z0-9]+/, '');
31 word = word.replace(/[^a-zA-Z0-9]+$/, '');
32 word = word.replace(/^Bug#/i, '');
33 } while ( oldword != word );
38 function open_tab(url) {
39 browser.tabs.create({url:url})
43 console.log('Error creating tab', err);
48 function open_link(url, in_new_tab) {
54 browser.tabs.query({active:true, currentWindow:true})
57 browser.tabs.executeScript(tabs[0].id, {file: '/icedeb-content.js'})
60 browser.tabs.sendMessage( tabs[0].id, {url:url} );
63 console.log('Error executing script', err);
68 console.log('Error querying the active tab of the current window', err);
74 function link_clicked(e) {
75 if (e.target.tagName == 'a') {
76 open_link(e.target.href, e.button == 1);
81 if ( !e.target.classList.contains('icedeb-button') )
86 let clip_input = document.getElementById("clipboard");
87 let clip = trim(clip_input.value);
93 switch (e.target.id) {
95 url = 'https://bugs.debian.org/' + clip;
98 url = 'https://tracker.debian.org/' + clip;
101 url = 'https://packages.debian.org/' + clip;
104 url = 'https://lists.debian.org/msgid-search/' + clip;
107 url = 'https://qa.debian.org/developer.php';
109 url += '?login=' + clip;
112 url = 'https://buildd.debian.org/' + clip;
115 url = 'https://security-tracker.debian.org/';
117 url += 'tracker/' + clip;
121 open_link(url, e.button == 1);
122 if (autoclose) window.close();
125 window.addEventListener('load', (e) => {
126 document.getElementById('button-list-container').addEventListener('click', link_clicked);
128 document.addEventListener('change', (e) => {
129 if ( !e.target.classList.contains('icedeb-option') )
135 let clip_input = document.getElementById("clipboard");
137 if (!document.execCommand("paste")) {
138 let err = document.getElementById('error');
139 err.textContent = 'Error retrieving clipboard contents';
140 err.classList.remove('hidden');