From 2d62d2c91ffeecf340453add1a4dd17fff6ce485 Mon Sep 17 00:00:00 2001 From: Alexandre Bury Date: Thu, 11 Jan 2018 18:20:23 +0100 Subject: [PATCH] Add Cursive::active_screen --- src/cursive.rs | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/cursive.rs b/src/cursive.rs index 9b29c92..dcb2ce5 100644 --- a/src/cursive.rs +++ b/src/cursive.rs @@ -55,9 +55,9 @@ impl Cursive { let (tx, rx) = mpsc::channel(); - let mut res = Cursive { + Cursive { theme: theme, - screens: Vec::new(), + screens: vec![views::StackView::new()], last_sizes: Vec::new(), global_callbacks: HashMap::new(), menubar: views::Menubar::new(), @@ -66,11 +66,7 @@ impl Cursive { cb_source: rx, cb_sink: tx, backend: backend, - }; - - res.screens.push(views::StackView::new()); - - res + } } /// Returns a sink for asynchronous callbacks. @@ -218,6 +214,11 @@ impl Cursive { &mut self.screens[id] } + /// Returns the id of the currently active screen. + pub fn active_screen(&self) -> ScreenId { + self.active_screen + } + /// Adds a new screen, and returns its ID. pub fn add_screen(&mut self) -> ScreenId { let res = self.screens.len();