Complete remake & Added redirect

This commit is contained in:
Patrick Schwarzer 2025-05-13 23:44:14 +02:00
parent ad69d761ad
commit e0a1d57ad9
3 changed files with 44 additions and 36 deletions

View file

@ -1,38 +1,25 @@
function removeShortButtons(){ const observer = new MutationObserver(mutations => {
const shortsButtons = document.querySelectorAll('a[title="Shorts"]'); mutations.forEach(mutation => {
mutation.addedNodes.forEach(node => {
if (node.nodeType !== Node.ELEMENT_NODE) return;
shortsButtons.forEach(button => { // Remove shorts from sidebar
button.remove(); if (node.tagName === "A" && node.title === "Shorts"){
}); node.remove();
}
function removeShortSections(){
const sections = document.querySelectorAll("span#title.style-scope.ytd-rich-shelf-renderer");
sections.forEach(title => {
if (title.textContent.trim() === "Shorts") {
var section = title;
for (let i = 1; i < 7; i++) {
section = section.parentElement;
if (!section){
return;
}
} }
if (section.className == "style-scope ytd-rich-shelf-renderer") { // Remove shorts sections from right side
section.style.display = "none"; if (node.nodeName.toLowerCase() === "ytd-reel-shelf-renderer"){
node.remove();
} }
}
// Remove shorts sections
if (node.hasAttribute?.("is-shorts")){
node.remove();
}
});
}); });
}
document.addEventListener("DOMContentLoaded", function () {
removeShortButtons();
removeShortSections();
}); });
const observer = new MutationObserver(function (mutations) { observer.observe(document.body, {childList: true, subtree: true});
removeShortButtons();
removeShortSections();
});
observer.observe(document.body, { childList: true, subtree: true });

7
Redirect.js Normal file
View file

@ -0,0 +1,7 @@
if (location.pathname.startsWith("/shorts/")) {
const videoID = location.pathname.split("/")[2];
if (videoID) {
location.replace("https://www.youtube.com/watch?v=${videoID}");
}
}

View file

@ -1,7 +1,7 @@
{ {
"manifest_version": 2, "manifest_version": 3,
"name": "Block Youtube Shorts", "name": "Remove Youtube Shorts",
"description": "Blocks the Youtube Short buttons and sections on the main page.", "description": "Removes any trace of Shorts from Youtube.",
"version": "1.0", "version": "1.0",
"icons": { "icons": {
"16": "icon16.png", "16": "icon16.png",
@ -9,11 +9,25 @@
"48": "icon48.png", "48": "icon48.png",
"128": "icon128.png" "128": "icon128.png"
}, },
"permissions": ["scripting"],
"host_permissions": ["*://www.youtube.com/*"], "host_permissions": ["*://www.youtube.com/*"],
"content_scripts": [ "content_scripts": [
{ {
"matches": ["*://www.youtube.com/*"], "matches": ["*://www.youtube.com/*"],
"js": ["Content.js"] "js": ["Content.js"],
"run_at": "document_idle"
},
{
"matches": ["*://www.youtube.com/*"],
"js": ["Redirect.js"],
"run_at": "document_start"
} }
] ],
} "action": {
"default_icon": {
"16": "icon16.png",
"32": "icon32.png"
}
}
}