diff --git a/interface/src/main.rs b/interface/src/main.rs index ee8fa5d..8fdfe58 100644 --- a/interface/src/main.rs +++ b/interface/src/main.rs @@ -100,8 +100,10 @@ fn main() -> Result<()> { let spawner = executor.handle().clone(); let auto_allowed_ = auto_allowed.clone(); + let interface_ = interface.clone(); thread::spawn(move || { spawner.block_on(async { + let log_toasts = toast_sender.clone(); tokio::spawn(async move { if let Err(e) = combat_logger(combatlog, directories.data_dir()).await { @@ -110,7 +112,7 @@ fn main() -> Result<()> { }); loop { - if let Err(e) = connect(toast_sender.clone(), notes.resubscribe(), data_sender.clone(), logging_sender.clone(), auto_telem_sender.clone(), auto_allowed_.clone(), interface.clone()).await { + if let Err(e) = connect(toast_sender.clone(), notes.resubscribe(), data_sender.clone(), logging_sender.clone(), auto_telem_sender.clone(), auto_allowed_.clone(), interface_.clone()).await { if let Err(_) = toast_sender.send(Toast::new().text(format!("{e:?}")).kind(ToastKind::Error)).await { break; }; @@ -120,6 +122,15 @@ fn main() -> Result<()> { }); + let interface_ = interface.clone(); + let spawner = executor.handle().clone(); + thread::spawn(move || { + spawner.block_on(async { + let _stoppie = auto.run(interface_).await.unwrap(); + println!("auto ended"); + }); + }); + println!("launching gui"); let (_conf_sender, conf) = watch::channel(CONFIGS); gui(gui_data, toasts, executor, conf, storage.clone(), auto_allowed, auto_enabled).unwrap();