14.05.2023, 17:43
Hallo zusammen,
habe ein kleines Problem und finde keine Lösung. Sobald mein Service-Worker inaktiv ist, geht nix mehr. Habe ein Kontent-Menu und es läuft alles gut, bis der Service-Worker einmal inaktiv ist.
Was kann ich tun, damit er vorher aktiviert wird und meine Funktionen dann ihre Funktion aufnehmen? Hat jemand einen Tipp für mich?
habe ein kleines Problem und finde keine Lösung. Sobald mein Service-Worker inaktiv ist, geht nix mehr. Habe ein Kontent-Menu und es läuft alles gut, bis der Service-Worker einmal inaktiv ist.
Was kann ich tun, damit er vorher aktiviert wird und meine Funktionen dann ihre Funktion aufnehmen? Hat jemand einen Tipp für mich?
Code:
function updateContextMenus(){
chrome.contextMenus.removeAll(function(){
chrome.storage.sync.get(function(storage){
if(storage['items']==undefined) storage['items'] = {};
var items = storage['items'];
for(key in items){
chrome.contextMenus.create({'title': items[key]['item-title'], "contexts": ['editable'], 'id': key }, function (){});
}
});
});
}
chrome.action.onClicked.addListener(function (tab){
if(tab.url=="https://de.zir-online.com/start"){
chrome.runtime.openOptionsPage();
}
});
var TABID;
chrome.tabs.onUpdated.addListener((tabId, changeInfo, tab) => {
console.log("Status: "+changeInfo.status)
console.log("ID: "+tabId)
if(changeInfo.status==='complete'||changeInfo.status==='loading') TABID=tabId;
});
chrome.contextMenus.onClicked.addListener(function (info){
chrome.storage.sync.get(function(storage){
// get text to paste from storage
//console.log(storage['items']);
if(storage['items']==undefined) return;
var items = storage['items'];
var key = info['menuItemId'];
var text = items[key]['item-content'];
console.log("Background: items: "+items+" key: "+key+" text: "+text+ "ID: "+TABID);
chrome.tabs.sendMessage(TABID, {
message: text
});
});
});
chrome.storage.onChanged.addListener(function(changes, areaName){
if(areaName == 'sync'){
updateContextMenus();
}
});
updateContextMenus();