From 2e2c42962d4f6ecbbd6ed70dd48c3815165740da Mon Sep 17 00:00:00 2001 From: Victor Kareh Date: Fri, 15 May 2026 12:36:05 -0400 Subject: terminal-screen: reset OSC color overrides on profile change VTE maintains a two-layer color system where colors set via OSC 10/11 escape sequences take precedence over colors set via the API When switching profiles, the API-layer colors were updated but any active OSC overrides would persist, causing the profile's colors to be ignored. This feeds OSC 110/111 reset sequences after setting profile colors to clear the override layer. --- src/terminal-screen.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src') diff --git a/src/terminal-screen.c b/src/terminal-screen.c index 58efc90..9883748 100644 --- a/src/terminal-screen.c +++ b/src/terminal-screen.c @@ -1188,6 +1188,9 @@ update_color_scheme (TerminalScreen *screen) vte_terminal_set_color_bold (VTE_TERMINAL (screen), bold_rgba); + /* Clear any OSC 10/11 color overrides so profile colors take effect */ + vte_terminal_feed (VTE_TERMINAL (screen), "\033]110\a\033]111\a", -1); + update_toplevel_transparency (screen); } -- cgit v1.2.1