From 323d67bac0afe8c26ae7b3e3a3e55e75fe39b668 Mon Sep 17 00:00:00 2001 From: J0w03L Date: Wed, 31 Dec 2025 18:11:16 +0000 Subject: [PATCH 1/2] feat: Add toggle to swap order of like/dislike buttons --- src/config/defaults.ts | 2 ++ src/i18n/resources/en.json | 1 + src/menu.ts | 13 +++++++++++++ src/renderer.ts | 12 ++++++++++++ 4 files changed, 28 insertions(+) diff --git a/src/config/defaults.ts b/src/config/defaults.ts index 629070860e..9e4df88b01 100644 --- a/src/config/defaults.ts +++ b/src/config/defaults.ts @@ -29,6 +29,7 @@ export interface DefaultConfig { autoResetAppCache: boolean; resumeOnStart: boolean; likeButtons: string; + swapLikeButtonsOrder: boolean; proxy: string; startingPage: string; backgroundMaterial?: 'none' | 'mica' | 'acrylic' | 'tabbed'; @@ -66,6 +67,7 @@ export const defaultConfig: DefaultConfig = { autoResetAppCache: false, resumeOnStart: true, likeButtons: '', + swapLikeButtonsOrder: false, proxy: '', startingPage: '', overrideUserAgent: false, diff --git a/src/i18n/resources/en.json b/src/i18n/resources/en.json index ab71a62262..4792625c0e 100644 --- a/src/i18n/resources/en.json +++ b/src/i18n/resources/en.json @@ -154,6 +154,7 @@ "default": "Default", "force-show": "Force show", "hide": "Hide", + "swap": "Swap like buttons order", "label": "Like buttons" }, "custom-window-title": { diff --git a/src/menu.ts b/src/menu.ts index 233ce47b73..c08f62710c 100644 --- a/src/menu.ts +++ b/src/menu.ts @@ -285,6 +285,19 @@ export const mainMenuTemplate = async ( config.set('options.likeButtons', 'hide'); }, }, + { + label: t( + 'main.menu.options.submenu.visual-tweaks.submenu.like-buttons.swap', + ), + type: 'checkbox', + checked: config.get('options.swapLikeButtonsOrder'), + click(item: MenuItem) { + config.setMenuOption( + 'options.swapLikeButtonsOrder', + item.checked, + ); + }, + }, ], }, { diff --git a/src/renderer.ts b/src/renderer.ts index 54962cd8f8..f159f23615 100644 --- a/src/renderer.ts +++ b/src/renderer.ts @@ -406,6 +406,18 @@ async function onApiLoaded() { document.head.appendChild(style); } + + // Swap like button order + if (window.mainConfig.get('options.swapLikeButtonsOrder')) { + const style = document.createElement('style'); + style.textContent = ` + ytmusic-like-button-renderer#like-button-renderer { + display: inline-flex; + flex-direction: row-reverse; + }`; + + document.head.appendChild(style); + } } /** From 06acd967ac41155e8c94e16ef737ae2e290d45ae Mon Sep 17 00:00:00 2001 From: J0w03L Date: Wed, 31 Dec 2025 18:16:01 +0000 Subject: [PATCH 2/2] Remove unnecessary selector from like/dislike button swap CSS --- src/renderer.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/renderer.ts b/src/renderer.ts index f159f23615..91019267d3 100644 --- a/src/renderer.ts +++ b/src/renderer.ts @@ -411,7 +411,7 @@ async function onApiLoaded() { if (window.mainConfig.get('options.swapLikeButtonsOrder')) { const style = document.createElement('style'); style.textContent = ` - ytmusic-like-button-renderer#like-button-renderer { + #like-button-renderer { display: inline-flex; flex-direction: row-reverse; }`;