From fa4c4db9444bd1540c7ffd6d334644e8a85b610c Mon Sep 17 00:00:00 2001 From: MiTHRAL Date: Wed, 22 Apr 2026 01:28:38 -0400 Subject: [PATCH] fix: narrow logo replacement to branding containers only, stop replacing emojis/avatars Co-Authored-By: Claude Sonnet 4.6 --- src/native/window.ts | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/native/window.ts b/src/native/window.ts index e848181..e5fb2b9 100644 --- a/src/native/window.ts +++ b/src/native/window.ts @@ -219,14 +219,10 @@ function injectBranding(wc: Electron.WebContents) { function isLogoImg(img) { var src = img.getAttribute('src') || ''; var alt = (img.getAttribute('alt') || '').toLowerCase(); - // explicit brand name in src or alt if (src.includes('revolt') || src.includes('stoat')) return true; if (alt === 'revolt' || alt === 'stoat') return true; - // any asset image whose alt contains logo/brand keywords - if (/revolt|stoat|logo/i.test(alt)) return true; - // hashed asset paths with no alt — likely a logo if it's an svg or small png - // and sits inside a known logo/brand container - var parent = img.closest('[class*="logo"],[class*="Logo"],[class*="brand"],[class*="Brand"],[class*="wordmark"],[class*="Wordmark"],[class*="header"],[class*="auth"],[class*="login"],[class*="splash"]'); + // only match within dedicated branding containers — never generic headers + var parent = img.closest('[class*="wordmark"],[class*="Wordmark"],[class*="auth"],[class*="login"],[class*="splash"],[class*="Landing"]'); if (parent && /\\.(svg|png|webp)/.test(src)) return true; return false; }