17 Commits

Author SHA1 Message Date
Jens Krause
99032834be
(cli)! Remove --countdown-target argument (#121)
Reverts #112.

For targeting a date (past/future) a new `event` feature will be
introduced (soon).
2025-10-08 18:03:06 +02:00
Jens Krause
eb376e4015
feat(args): accept years and days for --countdown (#114) 2025-10-01 15:26:02 +02:00
Jens Krause
3f4acec9f5
feat(args): parse countdown by given time (past or future) (#112)
* feat(args): parse `countdown` by time

* fix lint

No `Default` for `AppTime` needed...

* app: pass `countdown_until` down

* fix `parse_duration_by_time` and `parse_duration`

to handle different formats they support

* fix(countdown): percentage panics

`Duration::ZERO` needs to be considered

* `DirectedDuration`

* fix comment

* rename arg: `countdown-target`

* `ss`->`mm`, fix formats, update README

* alias `--ct`
2025-10-01 12:40:27 +02:00
jk
e094d7d81b
feat(logging): add --log arg to enable logs
and/or to pass a custom log directory.
2025-02-06 20:33:52 +01:00
Jens Krause
e95ecb9e9c
feat(notification): Animate (blink) clock entering done mode (#65)
Optional.
2025-02-05 19:29:56 +01:00
Jens Krause
7ff167368d
--features sound (#63)
to enable `sound` notification for local builds only. Needed to avoid
endless issues by building the app for different platforms. Sound
support can be hard.
2025-02-04 17:39:50 +01:00
Jens Krause
a54b1b409a
feat(clock): sound notification (experimental) (#62) 2025-02-04 17:28:41 +01:00
Jens Krause
d3c436da0b
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
2025-01-28 19:28:34 +01:00
jk
e4dcf61153
move parse_duration into duration module 2025-01-01 18:23:19 +01:00
Jens K.
a4f8885eb1
feat(cli): arg --menu (#37)
- Add `--menu` to args
- Add `--version` to args
- Change default behavior: At a first run of the app, the menu will be shown by default (similar to what @tschinz suggested in #33). However, if an user hides the menu later and closes the app, the menu will be hidden again with a next start. Just because the app restores the last app state.
2025-01-01 15:13:10 +01:00
jk
7206714f96
extract Content into common 2024-12-28 13:18:43 +01:00
Jens K.
9bfe4e528b
extract clock elements (#28)
Few tests. Extract `Style` to `common`.
2024-12-28 12:32:27 +01:00
jk
3ea715f83b
fix: initial values via args 2024-12-26 20:03:55 +01:00
Jens K.
acb627b1d7
Add styles: Light, Medium, Dark, Braille (#24)
* add `Style::Braille`, use ratatui's shades/arrows

* update args

* update README
2024-12-23 15:13:06 +01:00
Jens K.
c9b444e91a
Persist app state (#21) 2024-12-22 18:56:55 +01:00
Jens K.
2cf411e2ae
more args: mode, style, decis (#20) 2024-12-21 18:00:46 +01:00
Jens K.
b7d6a6c139
Args (#14) 2024-12-14 18:24:51 +01:00