diff options
author | Jesse Luehrs <doy@tozt.net> | 2019-11-22 15:11:22 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2019-11-22 15:11:22 -0500 |
commit | b6bfebb57804bc72fe1f85bcc050b548cb79a11d (patch) | |
tree | b50a3adf14fefab7cf6215a0a48c5a5763cffe64 | |
parent | 8ec55780d242581115bf964ef6d4cb0c79fea0df (diff) | |
download | teleterm-b6bfebb57804bc72fe1f85bcc050b548cb79a11d.tar.gz teleterm-b6bfebb57804bc72fe1f85bcc050b548cb79a11d.zip |
make sure our terminal size is updated correctly
a couple of our in-memory terminal parsers were being stuck at 80x24
-rw-r--r-- | teleterm/src/cmd/stream.rs | 1 | ||||
-rw-r--r-- | teleterm/src/server.rs | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/teleterm/src/cmd/stream.rs b/teleterm/src/cmd/stream.rs index 643b32a..83556de 100644 --- a/teleterm/src/cmd/stream.rs +++ b/teleterm/src/cmd/stream.rs @@ -265,6 +265,7 @@ impl<S: tokio::io::AsyncRead + tokio::io::AsyncWrite + Send + 'static> Some(tokio_pty_process_stream::Event::Resize { size: (rows, cols), }) => { + self.term.set_size(rows, cols); self.client.send_message(crate::protocol::Message::resize( crate::term::Size { rows, cols }, )); diff --git a/teleterm/src/server.rs b/teleterm/src/server.rs index 4c44a01..1f8f442 100644 --- a/teleterm/src/server.rs +++ b/teleterm/src/server.rs @@ -180,10 +180,11 @@ impl ConnectionState { term_info, } = std::mem::replace(self, Self::Accepted) { + let size = term_info.size; *self = Self::Streaming { username, term_info, - term: vt100::Parser::default(), + term: vt100::Parser::new(size.rows, size.cols, 0), }; } else { unreachable!() |