diff --git a/docs/changelog.rst b/docs/changelog.rst index 01f43a77d..289a5a195 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -57,6 +57,9 @@ To update |kitty|, :doc:`follow the instructions `. - Fix a regression in 0.19.0 that caused a rare crash when using the optional :opt:`scrollback_pager_history_size` (:iss:`3049`) +- Full screen kittens: Fix incorrect cursor position after kitten quits + (:iss:`3176`) + 0.19.2 [2020-11-13] ------------------- diff --git a/kittens/tui/operations.py b/kittens/tui/operations.py index 4a9dab14e..07abfd93c 100644 --- a/kittens/tui/operations.py +++ b/kittens/tui/operations.py @@ -264,7 +264,7 @@ def init_state(alternate_screen: bool = True) -> str: ans = ( S7C1T + SAVE_CURSOR + SAVE_PRIVATE_MODE_VALUES + reset_mode('LNM') + reset_mode('IRM') + reset_mode('DECKM') + reset_mode('DECSCNM') + - set_mode('DECARM') + reset_mode('DECOM') + set_mode('DECAWM') + + set_mode('DECARM') + set_mode('DECAWM') + set_mode('DECTCEM') + reset_mode('MOUSE_BUTTON_TRACKING') + reset_mode('MOUSE_MOTION_TRACKING') + reset_mode('MOUSE_MOVE_TRACKING') + reset_mode('FOCUS_TRACKING') + reset_mode('MOUSE_UTF8_MODE') + @@ -274,7 +274,7 @@ def init_state(alternate_screen: bool = True) -> str: '\033[*x' # reset DECSACE to default region select ) if alternate_screen: - ans += set_mode('ALTERNATE_SCREEN') + ans += set_mode('ALTERNATE_SCREEN') + reset_mode('DECOM') ans += clear_screen() return ans