Fixed Unify Settings not working for localStorage. Fixed other things

This commit is contained in:
ManeraKai 2022-05-28 11:00:48 +03:00
parent 334dfa9f94
commit 456b65af82
No known key found for this signature in database
GPG Key ID: 5ABC31FFD562E337
4 changed files with 23 additions and 19 deletions

View File

@ -338,7 +338,7 @@ function copyRaw(test, copyRawElement) {
})
}
function unify(test, unifyElement) {
function unify(test) {
return new Promise(resolve => {
browser.tabs.query(
{ active: true, currentWindow: true },
@ -369,12 +369,6 @@ function unify(test, unifyElement) {
if (!result) result = await translateHelper.initLingvaLocalStorage(test, url);
if (result) {
if (!test && unifyElement) {
const textElement = unifyElement.getElementsByTagName('h4')[0]
const oldHtml = textElement.innerHTML;
textElement.innerHTML = 'Unified';
setTimeout(() => textElement.innerHTML = oldHtml, 1000);
}
resolve(true);
} else resolve()
}

View File

@ -348,8 +348,7 @@ function initInvidiousCookies(test, from) {
utils.copyCookie('invidious', from, to, 'PREFS');
}
resolve(true);
}
)
})
}
function setInvidiousCookies() {
@ -368,7 +367,6 @@ function setInvidiousCookies() {
function initPipedLocalStorage(test, url, tabId) {
return new Promise(async resolve => {
await init();
console.log('initPipedLocalStorage');
if (disableYoutube || youtubeFrontend != 'piped') { resolve(); return; }
const protocolHost = utils.protocolHost(url);
if (![
@ -380,7 +378,7 @@ function initPipedLocalStorage(test, url, tabId) {
if (!test) {
browser.tabs.executeScript(tabId, { file: "/assets/javascripts/helpers/youtube/get_piped_preferences.js", runAt: "document_start" });
browser.tabs.executeScript(tabId, { file: "/assets/javascripts/helpers/youtube/get_piped_preferences.js" });
let checkedInstances;
if (youtubeProtocol == 'normal') checkedInstances = [...pipedNormalCustomRedirects, ...pipedNormalRedirectsChecks]
@ -390,7 +388,7 @@ function initPipedLocalStorage(test, url, tabId) {
for (const to of checkedInstances) {
browser.tabs.create(
{ url: checkedInstances[0] },
tab => browser.tabs.executeScript(tab.id, { file: "/assets/javascripts/helpers/youtube/set_piped_preferences.js", runAt: "document_start" })
tab => browser.tabs.executeScript(tab.id, { file: "/assets/javascripts/helpers/youtube/set_piped_preferences.js" })
);
}
}
@ -411,7 +409,7 @@ function initPipedMaterialLocalStorage(test, url, tabId,) {
].includes(protocolHost)) { resolve(); return; }
if (!test) {
browser.tabs.executeScript(tabId, { file: "/assets/javascripts/helpers/youtube/get_pipedMaterial_preferences.js", runAt: "document_start" });
browser.tabs.executeScript(tabId, { file: "/assets/javascripts/helpers/youtube/get_pipedMaterial_preferences.js" });
let checkedInstances;
if (youtubeProtocol == 'normal') checkedInstances = [...pipedMaterialNormalRedirectsChecks, ...pipedMaterialNormalCustomRedirects]
@ -421,7 +419,7 @@ function initPipedMaterialLocalStorage(test, url, tabId,) {
for (const to of checkedInstances)
browser.tabs.create(
{ url: to },
tab => browser.tabs.executeScript(tab.id, { file: "/assets/javascripts/helpers/youtube/set_pipedMaterial_preferences.js", runAt: "document_start" })
tab => browser.tabs.executeScript(tab.id, { file: "/assets/javascripts/helpers/youtube/set_pipedMaterial_preferences.js" })
);
}
resolve(true);

View File

@ -239,6 +239,7 @@ browser.contextMenus.onClicked.addListener(
}
);
browser.runtime.onMessage.addListener(message => {
if (message.function === 'unify') utils.unify();
});
browser.runtime.onMessage.addListener((message, sender, sendResponse) => {
if (message.function === 'unify') utils.unify(false).then(r => sendResponse({ response: r }))
return true;
});

View File

@ -90,11 +90,22 @@ utils.copyRaw(true).then(r => {
}
})
utils.unify(true).then(r => {
if (!r) document.getElementById('unify_div').style.display = 'none';
else {
const unify = document.getElementById('unify');
unify.addEventListener("click", () => browser.runtime.sendMessage({ function: 'unify' }));
unify.addEventListener("click", () =>
browser.runtime.sendMessage({ function: 'unify' },
response => {
if (response && response.response) {
const textElement = document.getElementById('unify').getElementsByTagName('h4')[0]
const oldHtml = textElement.innerHTML;
textElement.innerHTML = 'Unified';
setTimeout(() => textElement.innerHTML = oldHtml, 1000);
}
})
);
}
})
@ -113,7 +124,7 @@ browser.storage.local.get(
for (const a of document.getElementsByTagName('a')) {
a.addEventListener('click', e => {
if (!a.classList.includes('button')) {
if (!a.classList.contains('button')) {
browser.tabs.create({ url: a.getAttribute('href') });
e.preventDefault();
}