//! Window effects and customization //! //! Provides platform-specific window effects like transparency and vibrancy. use tauri::WebviewWindow; #[cfg(target_os = "windows")] use window_vibrancy::apply_acrylic; #[cfg(target_os = "macos")] use window_vibrancy::{apply_vibrancy, NSVisualEffectMaterial, NSVisualEffectState}; /// Applies Windows-specific window effects #[cfg(target_os = "windows")] pub fn setup_window_effects(window: &WebviewWindow) -> Result<(), Box> { apply_acrylic(window, Some((0, 0, 25, 125)))?; Ok(()) } /// Applies macOS-specific window effects #[cfg(target_os = "macos")] pub fn setup_window_effects(window: &WebviewWindow) -> Result<(), Box> { apply_vibrancy( window, NSVisualEffectMaterial::HudWindow, Some(NSVisualEffectState::Active), None, )?; Ok(()) } /// No-op for platforms without specific window effects #[cfg(not(any(target_os = "windows", target_os = "macos")))] pub fn setup_window_effects(_window: &WebviewWindow) -> Result<(), Box> { Ok(()) }