feat: native desktop notifications (experimental) (#59)
* desktop notification by entering `Mode::DONE` for `countdown` and `pomodoro` * remove redundant `on_done_called` check * remove build warning (release only) * log notification errors * cli arg to enable desktop notifications * persistant notification settings * ctrl shortcut * update changelog * max timer notification
This commit is contained in:
16
src/args.rs
16
src/args.rs
@@ -1,5 +1,5 @@
|
||||
use crate::{
|
||||
common::{Content, Style},
|
||||
common::{Content, Notification, Style},
|
||||
duration,
|
||||
};
|
||||
use clap::Parser;
|
||||
@@ -23,7 +23,7 @@ pub struct Args {
|
||||
)]
|
||||
pub pause: Option<Duration>,
|
||||
|
||||
#[arg(long, short = 'd', help = "Whether to show deciseconds or not.")]
|
||||
#[arg(long, short = 'd', help = "Show deciseconds.")]
|
||||
pub decis: bool,
|
||||
|
||||
#[arg(long, short = 'm', value_enum, help = "Mode to start with.")]
|
||||
@@ -32,9 +32,17 @@ pub struct Args {
|
||||
#[arg(long, short = 's', value_enum, help = "Style to display time with.")]
|
||||
pub style: Option<Style>,
|
||||
|
||||
#[arg(long, value_enum, help = "Whether to open the menu or not.")]
|
||||
#[arg(long, value_enum, help = "Open the menu.")]
|
||||
pub menu: bool,
|
||||
|
||||
#[arg(long, short = 'r', help = "Reset stored values to default.")]
|
||||
#[arg(long, short = 'r', help = "Reset stored values to default values.")]
|
||||
pub reset: bool,
|
||||
|
||||
#[arg(
|
||||
long,
|
||||
short,
|
||||
value_enum,
|
||||
help = "Toggle desktop notifications on or off. Experimental."
|
||||
)]
|
||||
pub notification: Option<Notification>,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user