From 80daef6b0dfda0d61697d118c824930bb00a8a35 Mon Sep 17 00:00:00 2001 From: Hendrik Sollich Date: Fri, 25 Mar 2022 21:59:31 +0100 Subject: [PATCH] fix: re-exported types from mac-notification-sys --- .gitignore | 1 + examples/mac_app_id.rs | 10 ++++++---- src/error.rs | 3 +++ src/lib.rs | 2 +- src/macos.rs | 5 ++++- 5 files changed, 15 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 815bb23ac..29f4c054c 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ Cargo.lock .directory *.rustfmt *.rsx +main-doc diff --git a/examples/mac_app_id.rs b/examples/mac_app_id.rs index 22b9f2d4a..7b9b42738 100644 --- a/examples/mac_app_id.rs +++ b/examples/mac_app_id.rs @@ -1,13 +1,15 @@ #[cfg(target_os = "macos")] fn main() -> Result<(), String> { - use notify_rust::{ - get_bundle_identifier_or_default, set_application, Notification, - }; + use notify_rust::{error::MacOsError, get_bundle_identifier_or_default, set_application, Notification}; let safari_id = get_bundle_identifier_or_default("Safari"); set_application(&safari_id).map_err(|f| format!("{}", f))?; - set_application(&safari_id).map_err(|f| format!("{}", f))?; + match set_application(&safari_id) { + Ok(_) => {} + Err(MacOsError::Application(error)) => println!("{}", error), + Err(MacOsError::Notification(error)) => println!("{}", error), + } Notification::new() .summary("Safari Crashed") diff --git a/src/error.rs b/src/error.rs index 94de48430..cf8f0448d 100644 --- a/src/error.rs +++ b/src/error.rs @@ -6,6 +6,9 @@ use std::{fmt, num}; /// Convenient wrapper around `std::Result`. pub type Result = ::std::result::Result; +#[cfg(target_os = "macos")] +pub use crate::macos::{ApplicationError, MacOsError, NotificationError}; + /// The Error type. #[derive(Debug)] pub struct Error { diff --git a/src/lib.rs b/src/lib.rs index 5fe5f35b6..00c3572c7 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -158,7 +158,7 @@ mod notification; pub(crate) mod urgency; #[cfg(target_os = "macos")] pub use mac_notification_sys::{get_bundle_identifier_or_default, set_application}; -#[cfg(target_os = "macos")] pub use macos::*; +#[cfg(target_os = "macos")] pub use macos::NotificationHandle; #[cfg(all(any(feature = "dbus", feature = "zbus"), unix, not(target_os = "macos")))] pub use crate::xdg::{ diff --git a/src/macos.rs b/src/macos.rs index 550e6a03f..30d57a838 100644 --- a/src/macos.rs +++ b/src/macos.rs @@ -1,4 +1,7 @@ -pub use crate::{error::*, notification::Notification}; +use crate::{error::*, notification::Notification}; + +pub use mac_notification_sys::error::{Error as MacOsError, NotificationError,ApplicationError}; + use std::ops::{Deref, DerefMut};