40 lines
1.2 KiB
Rust
40 lines
1.2 KiB
Rust
#[cfg(desktop)]
|
|
mod tray;
|
|
|
|
// Learn more about Tauri commands at https://tauri.app/develop/calling-rust/
|
|
#[tauri::command]
|
|
fn greet(name: &str) -> String {
|
|
format!("Hello, {}! You've been greeted from Rust!", name)
|
|
}
|
|
|
|
#[cfg_attr(mobile, tauri::mobile_entry_point)]
|
|
pub fn run() {
|
|
tauri::Builder::default()
|
|
.plugin(tauri_plugin_http::init())
|
|
.plugin(tauri_plugin_opener::init())
|
|
.plugin(tauri_plugin_autostart::init(
|
|
tauri_plugin_autostart::MacosLauncher::LaunchAgent,
|
|
None,
|
|
))
|
|
.plugin(tauri_plugin_dialog::init())
|
|
.setup(|app| {
|
|
#[cfg(desktop)]
|
|
{
|
|
tray::create_tray_menu(app.handle())?;
|
|
}
|
|
Ok(())
|
|
})
|
|
.on_window_event(|window, event| {
|
|
#[cfg(desktop)]
|
|
if let tauri::WindowEvent::CloseRequested { api, .. } = event {
|
|
// 隐藏窗口而不是关闭
|
|
let _ = window.hide();
|
|
// 阻止关闭
|
|
api.prevent_close();
|
|
}
|
|
})
|
|
.invoke_handler(tauri::generate_handler![greet])
|
|
.run(tauri::generate_context!())
|
|
.expect("error while running tauri application");
|
|
}
|