# Conflicts: # app/src/main/java/de/jeanlucmakiola/clockula/alarm/AlarmEngine.kt # app/src/main/java/de/jeanlucmakiola/clockula/data/backup/BackupCodec.kt # app/src/main/java/de/jeanlucmakiola/clockula/data/prefs/ClockPrefs.kt # app/src/main/java/de/jeanlucmakiola/clockula/data/prefs/SettingsPrefs.kt # app/src/main/java/de/jeanlucmakiola/clockula/domain/ClockDefaults.kt # app/src/main/java/de/jeanlucmakiola/clockula/ui/settings/AlarmDefaultsScreen.kt # app/src/main/java/de/jeanlucmakiola/clockula/ui/settings/SettingsViewModel.kt # app/src/test/java/de/jeanlucmakiola/clockula/data/backup/BackupCodecTest.kt # app/src/test/java/de/jeanlucmakiola/clockula/data/prefs/ClockPrefsTest.kt # app/src/test/java/de/jeanlucmakiola/clockula/data/prefs/SettingsPrefsTest.kt # docs/ARCHITECTURE.md # docs/BACKUP.md
87 lines
5.2 KiB
Markdown
87 lines
5.2 KiB
Markdown
# Changelog
|
||
|
||
All notable changes to Clockula are documented here.
|
||
|
||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||
Tag sections feed the release notes; see [`docs/RELEASING.md`](docs/RELEASING.md).
|
||
|
||
## [Unreleased]
|
||
|
||
The first release of Clockula: alarms, timers, a stopwatch and a world clock.
|
||
|
||
### Added
|
||
- **Alarms.** Alarms are scheduled as real alarm clocks, exempt from
|
||
battery saving and shown on the lock screen and in the status bar. They
|
||
survive a reboot, a process kill and a change of the device's clock, and
|
||
daylight-saving nights neither skip nor double one. If the full-screen or
|
||
notification permission is denied, an alarm still rings, and when no sound
|
||
can play it vibrates.
|
||
- An alarm list that shows when each alarm will ring and marks the next one.
|
||
Changes apply as you make them, with no Save button.
|
||
- Repeat days that start on your locale's first day of the week, and a "skip
|
||
next alarm" switch so you can sleep in once without turning the alarm off.
|
||
- An "Upcoming alarm" notification two hours before an alarm rings, with a
|
||
Dismiss button, so you can turn off today's alarm when you're already awake.
|
||
A repeating alarm skips just that once; a one-time alarm is switched off.
|
||
The same Dismiss shows on the alarm in the list. The notification is silent,
|
||
and turning it off in the system settings doesn't affect the alarm.
|
||
- Per-alarm sound, vibration, gradual volume, snooze length and limit, and a
|
||
dismiss challenge (a quick sum or a two-second hold). Each one can follow the
|
||
app default, so changing a default later still reaches it.
|
||
- Your own sounds: the device's alarm tones, the "Timer expired" sound from
|
||
Android's own Clock, a file you pick, Silent (which still vibrates), or
|
||
music from an app that shares its library, such as VLC or AntennaPod. If
|
||
the music can't play, or might not be heard, the alarm rings with the
|
||
default sound instead.
|
||
- A ring screen over the lock screen with snooze and dismiss. The dismiss
|
||
challenge always gives you a way out, works with a screen reader, and Back
|
||
can't silence an alarm.
|
||
- Choose what the volume buttons do while an alarm rings: change the volume
|
||
(as before), snooze, dismiss or nothing. Dismiss still respects the dismiss
|
||
challenge by snoozing instead, and a snooze press with no snoozes left
|
||
changes the volume rather than ending the alarm. It works while the ring
|
||
screen is showing.
|
||
- **Timers.** Run several at once, each with its own label, length and sound,
|
||
set from a keypad with saved presets. Pause, resume, reset and +1 min work
|
||
from the timer, from the live pill and from the notification. A finished
|
||
timer turns the screen on and opens over the lock screen with Stop and
|
||
+1 min. Timers keep counting through a reboot and aren't affected by changes
|
||
to the clock.
|
||
- **Stopwatch** with laps, the fastest and slowest marked, and Lap and Pause
|
||
in the notification. It keeps counting while the app is closed.
|
||
- **World clock.** An analog face for your own time, plus cities from the
|
||
device's time-zone database, searchable in your language. Each city shows
|
||
the offset from your time and whether it's a different day there. Reorder
|
||
them by dragging or with a screen reader, and set a home time zone or follow
|
||
the device.
|
||
- A live pill that shows whatever is counting from every tab.
|
||
- Swipe between tabs on phones. Tablets and foldables get a side rail.
|
||
- Other apps can set, show, snooze and dismiss alarms and timers through
|
||
Android's standard alarm intents, so assistants and automation apps work
|
||
with Clockula. A voice-set alarm cleans up after itself once dismissed.
|
||
- Settings: theme, dynamic colour, language, and the defaults every new alarm
|
||
and timer inherits.
|
||
- Choose how long a ringing alarm or a finished timer keeps going before it
|
||
stops on its own: 1, 5, 10, 15, 20 or 25 minutes, or Never, separately for
|
||
alarms and timers. Ten minutes stays the default, and Never still stops
|
||
after an hour so a phone left at home can't ring its battery flat.
|
||
- Back up alarms, timers, world clocks and settings to a JSON file, and restore
|
||
them on this device or another one.
|
||
- "Why might my alarm not ring?", a self-check that reads your device's real
|
||
state: permissions, battery optimisation, Do Not Disturb, alarm volume, and
|
||
whether the system has Clockula's next alarm. It links straight to the
|
||
setting that fixes each problem.
|
||
- **Bedtime**, under Settings: Clockula can turn on a Do Not Disturb mode of
|
||
its own at bedtime and off at your wake-up time, on the nights you choose,
|
||
with an optional reminder before it starts. On Android 15 and later it is a
|
||
real mode in Settings › Modes and can also turn the screen grayscale, dim the
|
||
wallpaper, switch to the dark theme and hide the always-on display. It needs
|
||
Do Not Disturb access, which the screen helps you grant, and it always lets
|
||
alarms through. It is separate from Digital Wellbeing's own Bedtime mode,
|
||
which apps can't turn on.
|
||
- Home-screen widgets: next alarm, timer (with controls), a quick timer, and
|
||
analog and digital clocks that show your world clocks at larger sizes. Each
|
||
widget can follow the system theme or stay light or dark, and choose what a
|
||
tap opens.
|