aboutsummaryrefslogtreecommitdiffstats
path: root/src/screen.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/screen.rs')
-rw-r--r--src/screen.rs17
1 files changed, 4 insertions, 13 deletions
diff --git a/src/screen.rs b/src/screen.rs
index 57b37fb..ce86312 100644
--- a/src/screen.rs
+++ b/src/screen.rs
@@ -1,5 +1,5 @@
+use crate::term::BufWrite as _;
use std::convert::TryInto as _;
-use std::io::Write as _;
use unicode_width::UnicodeWidthChar as _;
const DEFAULT_MULTI_PARAMS: &[i64] = &[0];
@@ -198,12 +198,7 @@ impl Screen {
}
fn write_contents_formatted(&self, contents: &mut Vec<u8>) {
- write!(
- contents,
- "{}",
- crate::term::HideCursor::new(self.hide_cursor())
- )
- .unwrap();
+ crate::term::HideCursor::new(self.hide_cursor()).write_buf(contents);
let prev_attrs = self.grid().write_contents_formatted(contents);
self.attrs.write_escape_code_diff(contents, &prev_attrs);
}
@@ -256,12 +251,8 @@ impl Screen {
fn write_contents_diff(&self, contents: &mut Vec<u8>, prev: &Self) {
if self.hide_cursor() != prev.hide_cursor() {
- write!(
- contents,
- "{}",
- crate::term::HideCursor::new(self.hide_cursor())
- )
- .unwrap();
+ crate::term::HideCursor::new(self.hide_cursor())
+ .write_buf(contents);
}
let prev_attrs = self.grid().write_contents_diff(
contents,