# 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
5.2 KiB
5.2 KiB
Changelog
All notable changes to Clockula are documented here.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
Tag sections feed the release notes; see 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.