diff --git a/src/lib.rs b/src/lib.rs index 3dfd17bd..1cc9488a 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -6,6 +6,9 @@ mod platform_impl; #[cfg(target_os = "linux")] #[path = "platform_impl/linux.rs"] mod platform_impl; +#[cfg(target_os = "macos")] +#[path = "platform_impl/macos.rs"] +mod platform_impl; pub(crate) type SingleInstanceCallback = dyn FnMut(&AppHandle, Vec, String) + Send + Sync + 'static; @@ -13,6 +16,5 @@ pub(crate) type SingleInstanceCallback = pub fn init, Vec, String) + Send + Sync + 'static>( f: F, ) -> TauriPlugin { - #[cfg(any(target_os = "windows", target_os = "linux"))] platform_impl::init(Box::new(f)) } diff --git a/src/platform_impl/macos.rs b/src/platform_impl/macos.rs new file mode 100644 index 00000000..99edeaed --- /dev/null +++ b/src/platform_impl/macos.rs @@ -0,0 +1,10 @@ +#![cfg(target_os = "macos")] + +use crate::SingleInstanceCallback; +use tauri::{ + plugin::{self, TauriPlugin}, + Runtime, +}; +pub fn init(f: Box>) -> TauriPlugin { + plugin::Builder::new("single-instance").build() +}