From 3a8fd5d96e2839d6042140c3a2e5eff7666dc54b Mon Sep 17 00:00:00 2001 From: Diphome Date: Mon, 7 Sep 2026 20:27:06 +0200 Subject: [PATCH] GUI: make preview overlay text readable in light mode The asset-info overlay and the FMOD audio-player labels (status, frequency, channels, timer, copyright) are hardcoded white in the Designer for the dark preview background, so on the light theme they were white-on-light and unreadable. Theme their foreground in ApplyTheme with the mode's normal text color (near-white in dark, dark in light). Co-Authored-By: Clue Opus 4.8 --- UnityRiftGUI/UnityRiftGUIForm.cs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/UnityRiftGUI/UnityRiftGUIForm.cs b/UnityRiftGUI/UnityRiftGUIForm.cs index 9a2e4de..90c7305 100644 --- a/UnityRiftGUI/UnityRiftGUIForm.cs +++ b/UnityRiftGUI/UnityRiftGUIForm.cs @@ -3666,6 +3666,16 @@ private void ApplyTheme(bool dark) previewPanel.BackColor = dark ? DarkContent : LightChrome; FMODpanel.BackColor = dark ? DarkContent : LightChrome; + // The preview overlay labels (asset info + the FMOD audio player) are hardcoded + // white in the Designer for the dark preview background; that is unreadable on the + // light background, so theme their foreground to match the current mode. + foreach (var lbl in new Label[] { assetInfoLabel, FMODstatusLabel, FMODinfoLabel, + FMODtimerLabel, FMODaudioChannelsLabel, FMODcopyrightLabel }) + { + if (lbl != null) + lbl.ForeColor = fore; + } + panel1.BackColor = chrome; panel1.ForeColor = fore;