From 558cfcbe56a095f0967fa9adff1601bca3736c04 Mon Sep 17 00:00:00 2001 From: DanS Date: Thu, 20 Aug 2026 17:06:04 -0500 Subject: [PATCH] fix(ui): restore ObsidianDragon logo in header and About tab MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ensureLogoTexture() rasterized the embedded DragonX SVG into logo_tex_ and returned early (added in 1752500 "themed DragonX logo"), so the app/product branding — the top-left header (app.cpp AddImage) and the About tab (getLogoTexture) — showed the DragonX coin mark instead of the ObsidianDragon logo. Drop that step so logo_tex_ resolves via the intended path: active-skin override → ui.toml header-icon → bundled ObsidianDragon dark/light PNG (disk, then embedded RESOURCE_LOGO). The DragonX SVG stays for coin_logo_tex_ (balance card) and drgx_emoji_tex_ (chat emoji), which are the currency mark and correct. Co-Authored-By: Claude Opus 4.8 (1M context) --- src/app.cpp | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/app.cpp b/src/app.cpp index 79320f8..b66088b 100644 --- a/src/app.cpp +++ b/src/app.cpp @@ -1502,16 +1502,11 @@ void App::ensureLogoTexture() } } - // 0) DragonX mark — rasterize the embedded SVG recolored to the theme (body = accent, detail = white) - // at ~2x the 128px viewBox for crisp downscaling. This is the branding on every skin; the per-skin - // PNG path below is only a fallback if rasterization ever fails. - if (util::LoadTextureFromSvg(embedded::kLogoDragonXSvg, 256, logoAccent, - detailCol, &logo_tex_, &logo_w_, &logo_h_)) { - DEBUG_LOGF("Rendered DragonX SVG logo (%dx%d, accent %08X)\n", logo_w_, logo_h_, logoAccent); - return; - } + // The header / top-left / About branding is the ObsidianDragon PRODUCT logo — NOT the DragonX coin + // mark (that is coin_logo_tex_ / drgx_emoji_tex_ above). Resolve it below: active-skin override, else + // the ui.toml header-icon, else the bundled ObsidianDragon dark/light PNG (disk, then embedded). - // 1) Fallback — theme-override logo from the active skin + // 1) theme-override logo from the active skin const auto* activeSkin = ui::schema::SkinManager::instance().findById( ui::schema::SkinManager::instance().activeSkinId()); std::string logoPath;