add browser host permission API
This commit is contained in:
@@ -1,12 +1,19 @@
|
||||
import browser from "webextension-polyfill";
|
||||
import { havePermission } from "./permissions";
|
||||
|
||||
browser.tabs.onUpdated.addListener(function (tabId, changeInfo, tab) {
|
||||
browser.tabs.executeScript(tabId, {
|
||||
file: 'content_script/input_tools.js',
|
||||
runAt: 'document_idle',
|
||||
});
|
||||
async function init() {
|
||||
if (await havePermission('tabs')) {
|
||||
browser.tabs.onUpdated.addListener(function (tabId, changeInfo, tab) {
|
||||
browser.tabs.executeScript(tabId, {
|
||||
file: 'content_script/input_tools.js',
|
||||
runAt: 'document_idle',
|
||||
});
|
||||
|
||||
browser.tabs.insertCSS(tabId, {
|
||||
file: 'content_script/input_tools.css',
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
browser.tabs.insertCSS(tabId, {
|
||||
file: 'content_script/input_tools.css',
|
||||
});
|
||||
});
|
||||
init();
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
import browser from "webextension-polyfill";
|
||||
|
||||
async function havePermission(name) {
|
||||
return await browser.permissions.contains({
|
||||
permissions: [ name ],
|
||||
origins: [ 'http://*/*', 'https://*/* '],
|
||||
});
|
||||
}
|
||||
|
||||
async function requestPermission(name) {
|
||||
return await browser.permissions.request({
|
||||
permissions: [ name ],
|
||||
origins: [ 'http://*/*', 'https://*/* '],
|
||||
});
|
||||
}
|
||||
|
||||
export { havePermission, requestPermission };
|
||||
@@ -8,9 +8,13 @@
|
||||
"128": "icons/icon_128.png"
|
||||
},
|
||||
"permissions": [
|
||||
"activeTab",
|
||||
"storage",
|
||||
"cookies",
|
||||
"contextMenus",
|
||||
"https://*.simplelogin.io/*"
|
||||
],
|
||||
"optional_permissions": [
|
||||
"tabs",
|
||||
"http://*/*",
|
||||
"https://*/*"
|
||||
|
||||
Reference in New Issue
Block a user