diff options
Diffstat (limited to 'src/main.rs')
-rw-r--r-- | src/main.rs | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/main.rs b/src/main.rs index 2bf7c50..2f9cfae 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,6 +1,8 @@ #[macro_use] extern crate anyhow; #[macro_use] extern crate log; +use std::rc::Rc; + use anyhow::Result; use cursive::Cursive; use cursive::CursiveExt; @@ -10,10 +12,13 @@ use flexi_logger::{Logger, LogTarget}; mod bindings; mod configuration; +mod runtime; +mod tabs; mod util; mod views; -use configuration::Configuration; +use crate::configuration::Configuration; +use crate::runtime::Runtime; fn main() -> Result<()> { let mut siv = cursive::Cursive::default(); @@ -39,8 +44,10 @@ fn main() -> Result<()> { let trigger: EventTrigger = Event::Char('q').into(); siv.set_on_post_event(trigger, |s| s.quit()); + let runtime = Runtime::new(config)?; + debug!("Adding mainview"); - siv.add_fullscreen_layer(crate::views::main::MainView::new(config)?); + siv.add_fullscreen_layer(crate::views::main::MainView::new(Rc::new(runtime))?); siv.add_global_callback('~', |siv: &mut Cursive| siv.add_layer(FlexiLoggerView::scrollable())); debug!("Starting cursive"); |