Report color scheme preference change on config reload even when application has overriden the background color

Fixes #9253
This commit is contained in:
Kovid Goyal
2025-11-30 21:48:26 +05:30
parent ccb3d666f4
commit eb44fa1682
2 changed files with 14 additions and 2 deletions

View File

@@ -1393,12 +1393,16 @@ class Window:
return self.screen.color_profile.default_bg.is_dark
def on_color_scheme_preference_change(self, via_escape_code: bool = False) -> None:
if self.screen.color_preference_notification and not via_escape_code:
self.report_color_scheme_preference()
if not via_escape_code:
self.report_color_scheme_preference_if_wanted()
self.call_watchers(self.watchers.on_color_scheme_preference_change, {
'is_dark': self.is_dark, 'via_escape_code': via_escape_code
})
def report_color_scheme_preference_if_wanted(self) -> None:
if self.screen.color_preference_notification:
self.report_color_scheme_preference()
def report_color_scheme_preference(self) -> None:
n = 1 if self.is_dark else 2
self.screen.send_escape_code_to_child(ESC_CSI, f'?997;{n}n')