The cursor should be reset on entering the alt screen

This commit is contained in:
Mitchell Hashimoto
2022-11-13 21:43:59 -08:00
parent 019f1e34bb
commit 23e7b8d63e

View File

@ -190,6 +190,9 @@ pub fn alternateScreen(self: *Terminal, options: AlternateScreenOptions) void {
self.secondary_screen = old; self.secondary_screen = old;
self.active_screen = .alternate; self.active_screen = .alternate;
// Clear our pen
self.screen.cursor = .{};
// Clear our selection // Clear our selection
self.selection = null; self.selection = null;
@ -1317,7 +1320,7 @@ pub fn setScrollingRegion(self: *Terminal, top: usize, bottom: usize) void {
/// Full reset /// Full reset
pub fn fullReset(self: *Terminal) void { pub fn fullReset(self: *Terminal) void {
self.primaryScreen(.{}); self.primaryScreen(.{ .clear_on_exit = true, .cursor_save = true });
self.selection = null; self.selection = null;
self.charset = .{}; self.charset = .{};
self.eraseDisplay(.scrollback); self.eraseDisplay(.scrollback);