diff --git a/apps/app/src-tauri/Cargo.toml b/apps/app/src-tauri/Cargo.toml index 5d1b4e22a..73529e506 100644 --- a/apps/app/src-tauri/Cargo.toml +++ b/apps/app/src-tauri/Cargo.toml @@ -19,8 +19,10 @@ serde_json = "1.0" serde = { version = "1.0", features = ["derive"] } tauri = { version = "1.6.1", features = [ "os-all", "updater", "notification-all", "window-set-size", "fs-write-file", "dialog-save", "system-tray", "global-shortcut-all", "clipboard-write-text", "shell-open", "icon-png"] } enigo = "0.2.1" -accessibility-sys = "0.1.3" -core-foundation-sys = "0.8.6" + +[target.'cfg(target_os = "macos")'.dependencies] +accessibility-sys = "0.1.3" +core-foundation-sys = "0.8.6" [features] # this feature is used for production builds or when `devPath` points to the filesystem and the built-in dev server is disabled. diff --git a/apps/app/src-tauri/src/main.rs b/apps/app/src-tauri/src/main.rs index 9901e1faa..2b05484bc 100644 --- a/apps/app/src-tauri/src/main.rs +++ b/apps/app/src-tauri/src/main.rs @@ -1,8 +1,12 @@ // Prevents additional console window on Windows in release, DO NOT REMOVE!! #![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] +#[cfg(target_os = "macos")] mod accessibility; + +#[cfg(target_os = "macos")] use accessibility::is_macos_accessibility_enabled; + use tauri::{CustomMenuItem, Manager}; use tauri::{SystemTray, SystemTrayEvent, SystemTrayMenu}; @@ -11,7 +15,7 @@ fn main() { let tray_menu = SystemTrayMenu::new().add_item(quit); - tauri::Builder::default() + let builder = tauri::Builder::default() .system_tray(SystemTray::new().with_menu(tray_menu)) .on_system_tray_event(|app, event| match event { SystemTrayEvent::LeftClick { @@ -28,12 +32,19 @@ fn main() { _ => {} }, _ => {} - }) - .invoke_handler(tauri::generate_handler![ - write_text, - set_tray_icon, - is_macos_accessibility_enabled - ]) + }); + + #[cfg(target_os = "macos")] + let builder = builder.invoke_handler(tauri::generate_handler![ + write_text, + set_tray_icon, + is_macos_accessibility_enabled, + ]); + + #[cfg(not(target_os = "macos"))] + let builder = builder.invoke_handler(tauri::generate_handler![write_text, set_tray_icon,]); + + builder .run(tauri::generate_context!()) .expect("error while running tauri application"); }