From d1eeeab7b15a676b4829a9191650b053eb1de97d Mon Sep 17 00:00:00 2001 From: huzibaca Date: Wed, 25 Sep 2024 11:47:01 +0800 Subject: [PATCH] chore: remove useless exit codes --- src-tauri/src/cmds.rs | 2 +- src-tauri/src/core/hotkey.rs | 3 ++- src-tauri/src/core/tray.rs | 2 +- src-tauri/src/feat.rs | 11 +++++++---- src-tauri/src/lib.rs | 6 ++++-- 5 files changed, 15 insertions(+), 9 deletions(-) diff --git a/src-tauri/src/cmds.rs b/src-tauri/src/cmds.rs index 66283b71..cc79e760 100644 --- a/src-tauri/src/cmds.rs +++ b/src-tauri/src/cmds.rs @@ -372,7 +372,7 @@ pub fn open_devtools(app_handle: tauri::AppHandle) { #[tauri::command] pub fn exit_app() { - feat::quit(); + feat::quit(Some(0)); } pub mod service { diff --git a/src-tauri/src/core/hotkey.rs b/src-tauri/src/core/hotkey.rs index 9f56bc5b..3d685c63 100755 --- a/src-tauri/src/core/hotkey.rs +++ b/src-tauri/src/core/hotkey.rs @@ -60,7 +60,8 @@ impl Hotkey { "clash_mode_direct" => || feat::change_clash_mode("direct".into()), "toggle_system_proxy" => feat::toggle_system_proxy, "toggle_tun_mode" => feat::toggle_tun_mode, - "quit" => feat::quit, + "quit" => || feat::quit(Some(0)), + _ => bail!("invalid function \"{func}\""), }; diff --git a/src-tauri/src/core/tray.rs b/src-tauri/src/core/tray.rs index a250c7da..7e8ac626 100644 --- a/src-tauri/src/core/tray.rs +++ b/src-tauri/src/core/tray.rs @@ -431,7 +431,7 @@ fn on_menu_event(app_handle: &AppHandle, event: MenuEvent) { "restart_app" => tauri::process::restart(&app_handle.env()), "quit" => { println!("quit"); - feat::quit(); + feat::quit(Some(0)); } _ => {} } diff --git a/src-tauri/src/feat.rs b/src-tauri/src/feat.rs index 8b90684d..09b201ca 100644 --- a/src-tauri/src/feat.rs +++ b/src-tauri/src/feat.rs @@ -98,12 +98,12 @@ pub fn toggle_tun_mode() { }); } -pub fn quit() { +pub fn quit(code: Option) { let app_handle = handle::Handle::global().app_handle().unwrap(); let _ = resolve::save_window_size_position(true); resolve::resolve_reset(); - app_handle.exit(0); - std::process::exit(0); + app_handle.exit(code.unwrap_or(0)); + //std::process::exit(0); } /// 修改clash的订阅 @@ -200,7 +200,10 @@ pub async fn patch_verge(patch: IVerge) -> Result<()> { if (socks_enabled.is_some() || http_enabled.is_some() || socks_port.is_some() - || http_port.is_some() || mixed_port.is_some()) && !generated { + || http_port.is_some() + || mixed_port.is_some()) + && !generated + { Config::generate().await?; CoreManager::global().run_core().await?; } diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index 254f9d46..65715f27 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -134,8 +134,10 @@ pub fn run() { .expect("error while running tauri application"); app.run(|_, e| match e { - tauri::RunEvent::ExitRequested { api, .. } => { - api.prevent_exit(); + tauri::RunEvent::ExitRequested { api, code, .. } => { + if code.is_none() { + api.prevent_exit(); + } } tauri::RunEvent::WindowEvent { label, event, .. } => { if label == "main" {