From a2648288752439182ab7dfc13b9405dc4ae8e68a Mon Sep 17 00:00:00 2001 From: Frog Date: Mon, 15 Jun 2026 23:19:44 -0700 Subject: [PATCH] Additional Label/Badge Colors for DLC Unlockers - Adds a badge/color for ScreamAPI (Epic Games) - Adds a badge/color for UPlay Unlocker (Ubisoft Games) - Adds a badge/color for Koaloader (MISC Injection Methods) --- CreamInstaller/Components/CustomTreeView.cs | 19 +++++++++++++ CreamInstaller/Utility/ThemeManager.cs | 30 +++++++++++++++++++++ 2 files changed, 49 insertions(+) diff --git a/CreamInstaller/Components/CustomTreeView.cs b/CreamInstaller/Components/CustomTreeView.cs index f125bf9..eea1d41 100644 --- a/CreamInstaller/Components/CustomTreeView.cs +++ b/CreamInstaller/Components/CustomTreeView.cs @@ -292,6 +292,25 @@ internal sealed class CustomTreeView : TreeView : ThemeManager.CreamAPIBadgeBackgroundColor; badgeBorder = ThemeManager.CreamAPIBadgeBorderColor; break; + case InstalledUnlocker.ScreamAPI: + badgeBack = highlighted + ? ThemeManager.ScreamAPIBadgeBackgroundHighlightColor + : ThemeManager.ScreamAPIBadgeBackgroundColor; + badgeBorder = ThemeManager.ScreamAPIBadgeBorderColor; + break; + case InstalledUnlocker.Koaloader: + badgeBack = highlighted + ? ThemeManager.KoaloaderBadgeBackgroundHighlightColor + : ThemeManager.KoaloaderBadgeBackgroundColor; + badgeBorder = ThemeManager.KoaloaderBadgeBorderColor; + break; + case InstalledUnlocker.UplayR1: + case InstalledUnlocker.UplayR2: + badgeBack = highlighted + ? ThemeManager.UplayBadgeBackgroundHighlightColor + : ThemeManager.UplayBadgeBackgroundColor; + badgeBorder = ThemeManager.UplayBadgeBorderColor; + break; default: badgeBack = highlighted ? ThemeManager.DefaultBadgeBackgroundHighlightColor diff --git a/CreamInstaller/Utility/ThemeManager.cs b/CreamInstaller/Utility/ThemeManager.cs index ef5538b..e9dc1f3 100644 --- a/CreamInstaller/Utility/ThemeManager.cs +++ b/CreamInstaller/Utility/ThemeManager.cs @@ -42,6 +42,21 @@ internal static class ThemeManager private static readonly Color DefaultBadgeBackHighlight = ColorTranslator.FromHtml("#00783C"); private static readonly Color DefaultBadgeBorder = ColorTranslator.FromHtml("#00B45A"); + // ScreamAPI badge: Epic Games black + private static readonly Color ScreamAPIBadgeBack = ColorTranslator.FromHtml("#131313"); + private static readonly Color ScreamAPIBadgeBackHighlight = ColorTranslator.FromHtml("#0A0A0A"); + private static readonly Color ScreamAPIBadgeBorder = ColorTranslator.FromHtml("#2A2A2A"); + + // Koaloader badge: koala gray + private static readonly Color KoaloaderBadgeBack = ColorTranslator.FromHtml("#8C8C8C"); + private static readonly Color KoaloaderBadgeBackHighlight = ColorTranslator.FromHtml("#7A7A7A"); + private static readonly Color KoaloaderBadgeBorder = ColorTranslator.FromHtml("#A8A8A8"); + + // Uplay badge: light blue + private static readonly Color UplayBadgeBack = ColorTranslator.FromHtml("#64B5F6"); + private static readonly Color UplayBadgeBackHighlight = ColorTranslator.FromHtml("#42A5F5"); + private static readonly Color UplayBadgeBorder = ColorTranslator.FromHtml("#90CAF9"); + // ---------------------------- // Light mode colors (system defaults) // ---------------------------- @@ -98,6 +113,21 @@ internal static class ThemeManager internal static Color DefaultBadgeBackgroundHighlightColor => DefaultBadgeBackHighlight; internal static Color DefaultBadgeBorderColor => DefaultBadgeBorder; + // ScreamAPI badge colors + internal static Color ScreamAPIBadgeBackgroundColor => ScreamAPIBadgeBack; + internal static Color ScreamAPIBadgeBackgroundHighlightColor => ScreamAPIBadgeBackHighlight; + internal static Color ScreamAPIBadgeBorderColor => ScreamAPIBadgeBorder; + + // Koaloader badge colors + internal static Color KoaloaderBadgeBackgroundColor => KoaloaderBadgeBack; + internal static Color KoaloaderBadgeBackgroundHighlightColor => KoaloaderBadgeBackHighlight; + internal static Color KoaloaderBadgeBorderColor => KoaloaderBadgeBorder; + + // Uplay badge colors (shared by R1 and R2) + internal static Color UplayBadgeBackgroundColor => UplayBadgeBack; + internal static Color UplayBadgeBackgroundHighlightColor => UplayBadgeBackHighlight; + internal static Color UplayBadgeBorderColor => UplayBadgeBorder; + // ----------------------------------------------------------------- // Public / Internal API // -----------------------------------------------------------------