Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions _locales/en/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -672,9 +672,18 @@
"Hide_YouTube_Logo": {
"message": "Hide YouTube Logo"
},
"hideAIContent": {
"message": "Hide AI-labeled videos"
},
"hideAISummary": {
"message": "Hide AI Summaries"
},
"deleteAIContent": {
"message": "Clear remembered AI videos"
},
"thisWillRemoveAllAIContent": {
"message": "This will clear all remembered AI-labeled video IDs. Videos may reappear until they are identified again."
},
"hideAnimatedThumbnails": {
"message": "Hide animated thumbnails"
},
Expand Down
1 change: 1 addition & 0 deletions build/manifest2.json
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@
"js&css/web-accessible/www.youtube.com/channel.js",
"js&css/web-accessible/www.youtube.com/shortcuts.js",
"js&css/web-accessible/www.youtube.com/blocklist.js",
"js&css/web-accessible/www.youtube.com/ai-content.js",
"js&css/web-accessible/www.youtube.com/settings.js",
"js&css/web-accessible/init.js"
]
Expand Down
1 change: 1 addition & 0 deletions build/manifest3Firefox.json
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@
"js&css/web-accessible/www.youtube.com/channel.js",
"js&css/web-accessible/www.youtube.com/shortcuts.js",
"js&css/web-accessible/www.youtube.com/blocklist.js",
"js&css/web-accessible/www.youtube.com/ai-content.js",
"js&css/web-accessible/www.youtube.com/settings.js",
"js&css/web-accessible/init.js",
"menu/icons/48.png"
Expand Down
20 changes: 20 additions & 0 deletions js&css/extension/init.js
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ const pageWorldFiles = [
'/js&css/web-accessible/www.youtube.com/channel.js',
'/js&css/web-accessible/www.youtube.com/shortcuts.js',
'/js&css/web-accessible/www.youtube.com/blocklist.js',
'/js&css/web-accessible/www.youtube.com/ai-content.js',
'/js&css/web-accessible/www.youtube.com/settings.js',
'/js&css/web-accessible/www.youtube.com/last-watched-overlay.js', // Neue Zeile hinzufügen
'/js&css/web-accessible/www.youtube.com/return-youtube-dislike.js',
Expand Down Expand Up @@ -272,6 +273,25 @@ document.addEventListener('it-message-from-youtube', function () {
chrome.storage.local.set({
watched: extension.storage.data.watched
});
} else if (message.action === 'ai_content') {
if (!extension.storage.data.ai_content || typeof extension.storage.data.ai_content !== 'object') {
extension.storage.data.ai_content = {};
}

if (message.type === 'add' && message.id) {
extension.storage.data.ai_content[message.id] = {
title: message.title,
when: message.when
};
}

if (message.type === 'remove' && message.id) {
delete extension.storage.data.ai_content[message.id];
}

chrome.storage.local.set({
ai_content: extension.storage.data.ai_content
});
} else if (message.action === 'set') {
if (message.value) {
chrome.storage.local.set({ [message.key]: message.value });
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,9 @@ html[data-theme='black'][it-comments='collapsed'][data-page-type=video] ytd-comm
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy #primary,
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy #secondary{margin-top: 0 !important; padding-top: 0 !important; padding-right: 0; flex-grow: 1;}
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy #secondary::before {content: ""; height: 24px; display: block;}
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy #primary {flex: 1 0 auto;padding: 0 24px; margin: 0;}
/* Allow primary to shrink so #secondary is not pushed off-screen (playlist/chat). */
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy #primary {flex: 1 1 auto; min-width: 0; padding: 0 24px; margin: 0;}
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy #secondary {flex: 0 0 auto; min-width: 300px !important;}
html[data-page-type=video][it-comments-sidebar='true'][it-player-size="do_not_change"] ytd-watch-flexy #primary-inner {padding-top: 24px;}
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy #player {margin: 0 auto;}

Expand Down Expand Up @@ -174,7 +176,7 @@ html[data-theme='black'][it-comments='collapsed'][data-page-type=video] ytd-comm
overflow-x: hidden !important;
}
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy:not([theater]):not([fullscreen]) #columns {overflow: hidden;}
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy[theater] #columns
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy[theater] #columns,
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy[fullscreen] #columns {
height: auto;
}
Expand All @@ -190,6 +192,11 @@ html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy #donation
min-width: unset !important;
}

/* Keep live chat from consuming the entire secondary column (comments stay reachable). */
html[data-page-type=video][it-comments-sidebar='true'] ytd-watch-flexy:not([theater]):not([fullscreen]) ytd-live-chat-frame#chat {
max-height: min(40vh, 480px) !important;
}

/* GRID RELATED */
html[data-page-type=video][it-comments-sidebar='true'] #items.ytd-watch-next-secondary-results-renderer ytd-compact-video-renderer,
html[data-page-type=video][it-comments-sidebar='true'] #items.ytd-watch-next-secondary-results-renderer ytd-compact-radio-renderer,
Expand Down
14 changes: 14 additions & 0 deletions js&css/extension/www.youtube.com/general/general.css
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,20 @@ html[it-hide-thumbnail-icon='true'] :is(ytd-video-renderer,ytd-promoted-video-re
# HIDE AI SUMMARY
------------------------------------------------------------------------------*/
html[it-hide-ai-summary='true'] ytd-expandable-metadata-renderer[has-video-summary],
/*------------------------------------------------------------------------------
# HIDE AI-LABELED VIDEOS (remembered IDs + visible badges)
------------------------------------------------------------------------------*/
html[it-hide-ai-content='true'] .it-ai-content,
html[it-hide-ai-content='true'] ytd-rich-item-renderer:has([aria-label*="Made with AI" i]),
html[it-hide-ai-content='true'] ytd-rich-item-renderer:has([aria-label*="Altered or synthetic" i]),
html[it-hide-ai-content='true'] ytd-video-renderer:has([aria-label*="Made with AI" i]),
html[it-hide-ai-content='true'] ytd-video-renderer:has([aria-label*="Altered or synthetic" i]),
html[it-hide-ai-content='true'] ytd-compact-video-renderer:has([aria-label*="Made with AI" i]),
html[it-hide-ai-content='true'] ytd-compact-video-renderer:has([aria-label*="Altered or synthetic" i]),
html[it-hide-ai-content='true'] ytd-grid-video-renderer:has([aria-label*="Made with AI" i]),
html[it-hide-ai-content='true'] yt-lockup-view-model:has([aria-label*="Made with AI" i]),
html[it-hide-ai-content='true'] yt-lockup-view-model:has([aria-label*="Altered or synthetic" i]),
html[it-hide-ai-content='true'] ytd-reel-item-renderer:has([aria-label*="Made with AI" i]),
/*--------------------------------------------------------------
# HIDE DOTS ON THUMBNAILS
--------------------------------------------------------------*/
Expand Down
132 changes: 117 additions & 15 deletions js&css/extension/www.youtube.com/styles.css
Original file line number Diff line number Diff line change
Expand Up @@ -2269,42 +2269,144 @@ html:is([it-thumbnail-size="large"], [it-thumbnail-size="medium"], [it-thumbnail
}

/* Thumbnail sizes: Search Results & History Lists */
html[it-thumbnail-size="large"] ytd-video-renderer ytd-thumbnail {
html[it-thumbnail-size="large"] ytd-video-renderer ytd-thumbnail,
html[it-thumbnail-size="large"] ytd-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="large"] ytd-video-renderer #thumbnail,
html[it-thumbnail-size="large"] ytd-playlist-renderer ytd-playlist-thumbnail,
html[it-thumbnail-size="large"] ytd-playlist-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="large"] ytd-item-section-renderer yt-lockup-view-model .yt-lockup-view-model-wiz__content-image,
html[it-thumbnail-size="large"] ytd-item-section-renderer yt-lockup-view-model a.ytLockupViewModelContentImage {
width: 360px !important;
max-width: 420px !important;
min-width: 360px !important;
min-width: 0 !important;
}
html[it-thumbnail-size="medium"] ytd-video-renderer ytd-thumbnail {
html[it-thumbnail-size="medium"] ytd-video-renderer ytd-thumbnail,
html[it-thumbnail-size="medium"] ytd-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="medium"] ytd-video-renderer #thumbnail,
html[it-thumbnail-size="medium"] ytd-playlist-renderer ytd-playlist-thumbnail,
html[it-thumbnail-size="medium"] ytd-playlist-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="medium"] ytd-item-section-renderer yt-lockup-view-model .yt-lockup-view-model-wiz__content-image,
html[it-thumbnail-size="medium"] ytd-item-section-renderer yt-lockup-view-model a.ytLockupViewModelContentImage {
width: 280px !important;
max-width: 320px !important;
min-width: 280px !important;
min-width: 0 !important;
}
html[it-thumbnail-size="small"] ytd-video-renderer ytd-thumbnail {
html[it-thumbnail-size="small"] ytd-video-renderer ytd-thumbnail,
html[it-thumbnail-size="small"] ytd-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="small"] ytd-video-renderer #thumbnail,
html[it-thumbnail-size="small"] ytd-playlist-renderer ytd-playlist-thumbnail,
html[it-thumbnail-size="small"] ytd-playlist-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="small"] ytd-item-section-renderer yt-lockup-view-model .yt-lockup-view-model-wiz__content-image,
html[it-thumbnail-size="small"] ytd-item-section-renderer yt-lockup-view-model a.ytLockupViewModelContentImage {
width: 240px !important;
max-width: 260px !important;
min-width: 240px !important;
min-width: 0 !important;
}
html[it-thumbnail-size="x-small"] ytd-video-renderer ytd-thumbnail {
html[it-thumbnail-size="x-small"] ytd-video-renderer ytd-thumbnail,
html[it-thumbnail-size="x-small"] ytd-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="x-small"] ytd-video-renderer #thumbnail,
html[it-thumbnail-size="x-small"] ytd-playlist-renderer ytd-playlist-thumbnail,
html[it-thumbnail-size="x-small"] ytd-playlist-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="x-small"] ytd-item-section-renderer yt-lockup-view-model .yt-lockup-view-model-wiz__content-image,
html[it-thumbnail-size="x-small"] ytd-item-section-renderer yt-lockup-view-model a.ytLockupViewModelContentImage {
width: 160px !important;
max-width: 180px !important;
min-width: 160px !important;
min-width: 0 !important;
}
html[it-thumbnail-size="xx-small"] ytd-video-renderer ytd-thumbnail {
html[it-thumbnail-size="xx-small"] ytd-video-renderer ytd-thumbnail,
html[it-thumbnail-size="xx-small"] ytd-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="xx-small"] ytd-video-renderer #thumbnail,
html[it-thumbnail-size="xx-small"] ytd-playlist-renderer ytd-playlist-thumbnail,
html[it-thumbnail-size="xx-small"] ytd-playlist-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="xx-small"] ytd-item-section-renderer yt-lockup-view-model .yt-lockup-view-model-wiz__content-image,
html[it-thumbnail-size="xx-small"] ytd-item-section-renderer yt-lockup-view-model a.ytLockupViewModelContentImage {
width: 120px !important;
max-width: 140px !important;
min-width: 120px !important;
min-width: 0 !important;
}

/* Thumbnail sizes: Playlist page video list */
html[it-thumbnail-size="large"] ytd-playlist-video-renderer ytd-thumbnail,
html[it-thumbnail-size="large"] ytd-playlist-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="large"] ytd-playlist-video-renderer #thumbnail,
html[it-thumbnail-size="large"] ytd-playlist-panel-video-renderer ytd-thumbnail,
html[it-thumbnail-size="large"] ytd-playlist-panel-video-renderer yt-thumbnail-view-model {
width: 200px !important;
max-width: 200px !important;
min-width: 0 !important;
}
html[it-thumbnail-size="medium"] ytd-playlist-video-renderer ytd-thumbnail,
html[it-thumbnail-size="medium"] ytd-playlist-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="medium"] ytd-playlist-video-renderer #thumbnail,
html[it-thumbnail-size="medium"] ytd-playlist-panel-video-renderer ytd-thumbnail,
html[it-thumbnail-size="medium"] ytd-playlist-panel-video-renderer yt-thumbnail-view-model {
width: 160px !important;
max-width: 160px !important;
min-width: 0 !important;
}
html[it-thumbnail-size="small"] ytd-playlist-video-renderer ytd-thumbnail,
html[it-thumbnail-size="small"] ytd-playlist-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="small"] ytd-playlist-video-renderer #thumbnail,
html[it-thumbnail-size="small"] ytd-playlist-panel-video-renderer ytd-thumbnail,
html[it-thumbnail-size="small"] ytd-playlist-panel-video-renderer yt-thumbnail-view-model {
width: 120px !important;
max-width: 120px !important;
min-width: 0 !important;
}
html[it-thumbnail-size="x-small"] ytd-playlist-video-renderer ytd-thumbnail,
html[it-thumbnail-size="x-small"] ytd-playlist-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="x-small"] ytd-playlist-video-renderer #thumbnail,
html[it-thumbnail-size="x-small"] ytd-playlist-panel-video-renderer ytd-thumbnail,
html[it-thumbnail-size="x-small"] ytd-playlist-panel-video-renderer yt-thumbnail-view-model {
width: 90px !important;
max-width: 90px !important;
min-width: 0 !important;
}
html[it-thumbnail-size="xx-small"] ytd-playlist-video-renderer ytd-thumbnail,
html[it-thumbnail-size="xx-small"] ytd-playlist-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="xx-small"] ytd-playlist-video-renderer #thumbnail,
html[it-thumbnail-size="xx-small"] ytd-playlist-panel-video-renderer ytd-thumbnail,
html[it-thumbnail-size="xx-small"] ytd-playlist-panel-video-renderer yt-thumbnail-view-model {
width: 70px !important;
max-width: 70px !important;
min-width: 0 !important;
}

/* Thumbnail sizes: Video Player Sidebar (Related Videos) */
html[it-thumbnail-size="large"] ytd-compact-video-renderer ytd-thumbnail {
html[it-thumbnail-size="large"] ytd-compact-video-renderer ytd-thumbnail,
html[it-thumbnail-size="large"] ytd-compact-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="large"] #related yt-lockup-view-model .yt-lockup-view-model-wiz__content-image,
html[it-thumbnail-size="large"] #related yt-lockup-view-model a.ytLockupViewModelContentImage {
width: 200px !important;
max-width: 200px !important;
}
html[it-thumbnail-size="medium"] ytd-compact-video-renderer ytd-thumbnail {
html[it-thumbnail-size="medium"] ytd-compact-video-renderer ytd-thumbnail,
html[it-thumbnail-size="medium"] ytd-compact-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="medium"] #related yt-lockup-view-model .yt-lockup-view-model-wiz__content-image,
html[it-thumbnail-size="medium"] #related yt-lockup-view-model a.ytLockupViewModelContentImage {
width: 160px !important;
max-width: 160px !important;
}
html[it-thumbnail-size="small"] ytd-compact-video-renderer ytd-thumbnail {
html[it-thumbnail-size="small"] ytd-compact-video-renderer ytd-thumbnail,
html[it-thumbnail-size="small"] ytd-compact-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="small"] #related yt-lockup-view-model .yt-lockup-view-model-wiz__content-image,
html[it-thumbnail-size="small"] #related yt-lockup-view-model a.ytLockupViewModelContentImage {
width: 120px !important;
max-width: 120px !important;
}
html[it-thumbnail-size="x-small"] ytd-compact-video-renderer ytd-thumbnail {
html[it-thumbnail-size="x-small"] ytd-compact-video-renderer ytd-thumbnail,
html[it-thumbnail-size="x-small"] ytd-compact-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="x-small"] #related yt-lockup-view-model .yt-lockup-view-model-wiz__content-image,
html[it-thumbnail-size="x-small"] #related yt-lockup-view-model a.ytLockupViewModelContentImage {
width: 90px !important;
max-width: 90px !important;
}
html[it-thumbnail-size="xx-small"] ytd-compact-video-renderer ytd-thumbnail {
html[it-thumbnail-size="xx-small"] ytd-compact-video-renderer ytd-thumbnail,
html[it-thumbnail-size="xx-small"] ytd-compact-video-renderer yt-thumbnail-view-model,
html[it-thumbnail-size="xx-small"] #related yt-lockup-view-model .yt-lockup-view-model-wiz__content-image,
html[it-thumbnail-size="xx-small"] #related yt-lockup-view-model a.ytLockupViewModelContentImage {
width: 70px !important;
max-width: 70px !important;
}

/*--------------------------------------------------------------
Expand Down
10 changes: 10 additions & 0 deletions js&css/web-accessible/core.js
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,9 @@ document.addEventListener('it-message-from-extension', function () {

ImprovedTube.init();
ImprovedTube.blocklistInit();
if (typeof ImprovedTube.aiContentInit === 'function') {
ImprovedTube.aiContentInit();
}

/*--------------------------------------------------------------
# Immediate reaction to any change of our extension storage (settings)
Expand Down Expand Up @@ -243,6 +246,13 @@ document.addEventListener('it-message-from-extension', function () {
ImprovedTube.blocklistInit();
break

case 'aiContent':
case 'hideAiContent':
if (typeof ImprovedTube.aiContentInit === 'function') {
ImprovedTube.aiContentInit();
}
break

case 'playerPlaybackSpeed':
case 'playerForcedPlaybackSpeed':
if (ImprovedTube.storage.player_forced_playback_speed === true && isFinite(Number(ImprovedTube.storage.player_playback_speed))) {
Expand Down
10 changes: 9 additions & 1 deletion js&css/web-accessible/functions.js
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,11 @@ ImprovedTube.ytElementsHandler = function (node) {
this.blocklistNode(node);
}
}
if (this.storage.hide_ai_content) {
if ((node.href && node.classList.contains('ytd-thumbnail')) || node.classList.contains('ytd-video-preview')) {
this.aiContentNode(node);
}
}
} else if (name === 'YTD-TOGGLE-BUTTON-RENDERER' || name === 'YTD-PLAYLIST-LOOP-BUTTON-RENDERER') {
//can be precise previously node.parentComponent & node.parentComponent.parentComponent
if (node.closest("YTD-MENU-RENDERER")
Expand Down Expand Up @@ -380,7 +385,10 @@ ImprovedTube.videoPageUpdate = function () {
ImprovedTube.playerCinemaModeButton();
ImprovedTube.playerHamburgerButton();
ImprovedTube.playerControls();

if (typeof ImprovedTube.detectAiContent === 'function') {
ImprovedTube.detectAiContent();
}

// Initialize large playlist handler for playlist videos
if (this.getParam(location.href, 'list')) {
ImprovedTube.playlistLargePlaylistHandler();
Expand Down
10 changes: 10 additions & 0 deletions js&css/web-accessible/init.js
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,12 @@ ImprovedTube.init = function () {
ImprovedTube.stop_shorts_autoloop();
}
ImprovedTube.shortsAutoScroll();
if (typeof ImprovedTube.detectAiContent === 'function') {
ImprovedTube.detectAiContent();
}
}
if (typeof ImprovedTube.aiContentInit === 'function') {
ImprovedTube.aiContentInit();
}
if (window.matchMedia) {
document.documentElement.dataset.systemColorScheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
Expand Down Expand Up @@ -273,6 +279,10 @@ document.addEventListener('yt-navigate-finish', function () {
} catch (e) { console.error('[RYD] error', e); }
}

if (typeof ImprovedTube.aiContentInit === 'function') {
ImprovedTube.aiContentInit();
}

if (ImprovedTube.elements.player && ImprovedTube.elements.player.setPlaybackRate) {
ImprovedTube.videoPageUpdate();
ImprovedTube.initPlayer();
Expand Down
Loading