diff --git a/kitty/window.py b/kitty/window.py index bec7d9fff..aa79c1f9f 100644 --- a/kitty/window.py +++ b/kitty/window.py @@ -1318,6 +1318,7 @@ def set_dynamic_color(self, code: int, value: str | bytes | memoryview = '') -> ret = set_pointer_shape(self.screen, value, self.os_window_id) if ret: self.screen.send_escape_code_to_child(ESC_OSC, '22;' + ret) + return dirtied = default_bg_changed = False def change(which: DynamicColor, val: str) -> None: diff --git a/kitty_tests/parser.py b/kitty_tests/parser.py index 38d994f51..dd0f1301a 100644 --- a/kitty_tests/parser.py +++ b/kitty_tests/parser.py @@ -518,6 +518,8 @@ def test_osc_codes(self): pb(f'\033]52;p;{payload}\x07', ('clipboard_control', 52, f'p;{payload}')) c.clear() pb('\033]52;p;xyz\x07', ('clipboard_control', 52, 'p;xyz')) + c.clear() + pb('\033]22;?__current__\x07', ('set_dynamic_color', 22, '?__current__')) def test_dcs_codes(self): s = self.create_screen()