summaryrefslogtreecommitdiffstats
path: root/src/term.rs
diff options
context:
space:
mode:
authorrabite <rabite@posteo.de>2019-05-07 21:42:45 +0200
committerrabite <rabite@posteo.de>2019-05-07 23:48:32 +0200
commit54e0a4246feb6b384c21f0390884b379d3bdfa81 (patch)
treea05b55090ddf88bf4b5b9241685439f439258043 /src/term.rs
parentd248d0789fe3260265c6d6519d6d0c255fdc09ed (diff)
flush stdin after reading input
Diffstat (limited to 'src/term.rs')
-rw-r--r--src/term.rs10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/term.rs b/src/term.rs
index fb84ae3..35105fd 100644
--- a/src/term.rs
+++ b/src/term.rs
@@ -1,4 +1,4 @@
-use std::io::{Stdout, Write, BufWriter};
+use std::io::{Stdout, Write, BufWriter, BufRead};
use std::sync::{Arc, Mutex, RwLock};
use termion;
@@ -142,6 +142,14 @@ pub trait ScreenExt: Write {
impl ScreenExt for Screen {}
impl ScreenExt for TermMode {}
+pub fn flush_stdin() {
+ let stdin = std::io::stdin();
+ let mut stdin = stdin.lock();
+
+ // Not 100% sure if it's OK to just call consume like this
+ stdin.consume(10);
+}
+
pub fn xsize() -> u16 {
let (xsize, _) = termion::terminal_size().unwrap();
xsize