mirror of
https://github.com/Drop-OSS/drop-app.git
synced 2026-07-15 15:26:34 +10:00
fix: app states
This commit is contained in:
@@ -1,10 +1,11 @@
|
||||
use log::{debug, error};
|
||||
use tauri::AppHandle;
|
||||
use tokio::sync::Mutex;
|
||||
|
||||
use crate::AppState;
|
||||
|
||||
#[tauri::command]
|
||||
pub async fn quit(app: tauri::AppHandle, state: tauri::State<'_, std::sync::Mutex<AppState<'_>>>) -> Result<(), ()> {
|
||||
pub async fn quit(app: tauri::AppHandle, state: tauri::State<'_, Mutex<AppState<'_>>>) -> Result<(), ()> {
|
||||
cleanup_and_exit(&app, &state).await;
|
||||
|
||||
Ok(())
|
||||
@@ -12,10 +13,10 @@ pub async fn quit(app: tauri::AppHandle, state: tauri::State<'_, std::sync::Mute
|
||||
|
||||
pub async fn cleanup_and_exit(
|
||||
app: &AppHandle,
|
||||
state: &tauri::State<'_, std::sync::Mutex<AppState<'_>>>,
|
||||
state: &tauri::State<'_, Mutex<AppState<'_>>>,
|
||||
) {
|
||||
debug!("cleaning up and exiting application");
|
||||
let download_manager = state.lock().unwrap().download_manager.clone();
|
||||
let download_manager = state.lock().await.download_manager.clone();
|
||||
match download_manager.ensure_terminated().await {
|
||||
Ok(res) => match res {
|
||||
Ok(_) => debug!("download manager terminated correctly"),
|
||||
|
||||
Reference in New Issue
Block a user