Проблема с копированием в буфер обмена js
Нужна помощь с расширением в chrome. Я хочу выделить текст - нажать на кнопку расширения в контекстном меню - обработать текст - записать обработанный текст в буфер обмена. При записи в буфер выдает ошибку: Uncaught (in promise) DOMException: Document is not focused.
Как мне обойти ошибку? Спасибо.
Код:
function toNormalCase (invalidText) {
return invalidText.charAt(0).toUpperCase() + invalidText.toLowerCase().slice(1);
}
function wordSplitter (wholeName) {
return wholeName.split(' ');
}
function toLowerCaser (fullName) {
const splittedName = wordSplitter(fullName.selectionText);
let normalName = '';
for (let word of splittedName) {
normalName = normalName.concat(toNormalCase(word) + ' ');
}
console.log(navigator.clipboard.writeText);
navigator.clipboard.writeText(normalName.slice(0, -1));
}
chrome.contextMenus.create({
title: "Make It Normal Case",
contexts:["selection"],
onclick: toLowerCaser
});
manifest.json
{
"manifest_version": 2,
"name": "ToLowerCaser",
"description": "Just a thing, that makes names into normal cases",
"version": "1.0.0",
"icons": {"128": "icon_128.png"},
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"background": {
"scripts": ["background.js"]
},
"permissions": [
"tabs",
"<all_urls>",
"storage",
"contextMenus",
"clipboard"
]
}