diff options
Diffstat (limited to 'src/async.rs')
-rw-r--r-- | src/async.rs | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/async.rs b/src/async.rs index 5861443..92a4f30 100644 --- a/src/async.rs +++ b/src/async.rs @@ -50,9 +50,16 @@ impl Textmode { } pub async fn refresh(&mut self) -> std::io::Result<()> { - let diff = self.next().screen().contents_diff(self.cur().screen()); - self.write_stdout(&diff).await?; - self.cur_mut().process(&diff); + let diffs = &[ + self.next().screen().contents_diff(self.cur().screen()), + self.next().screen().input_mode_diff(self.cur().screen()), + self.next().screen().title_diff(self.cur().screen()), + self.next().screen().bells_diff(self.cur().screen()), + ]; + for diff in diffs { + self.write_stdout(&diff).await?; + self.cur_mut().process(&diff); + } Ok(()) } |