Problem
Reset times in OpenUsage (e.g. Resets today at 11:04) are formatted via Intl.DateTimeFormat with no hour12 flag, so the clock format is dictated entirely by the user's OS locale. There's no way to override it.
This is a problem for:
- Users in 12-hour locales who prefer 24-hour clocks (or vice versa).
- Users in mixed environments (e.g. UK locale with US date conventions, or developers who want consistency with their terminal/IDE).
- Anyone whose system locale doesn't match how they want OpenUsage to display time.
Today the only workaround is to change the OS locale itself, which affects every other app.
Proposed Solution
Add a Time Format section to Settings (next to Reset Timers) with three options:
- Auto (default) — follows OS locale, matches current behavior.
- 12-hour — forces
11:04 AM style.
- 24-hour — forces
11:04 style.
Each option's button shows a live preview of how times will render. Persisted via the existing Tauri store.
Alternatives Considered
- Auto-detect only, no override — current behavior. Doesn't address users who want a different format than their OS.
- Single 12h/24h toggle without
Auto — forces every user to make an explicit choice and can't track locale changes.
- Inferring from a separate locale setting — heavier; OpenUsage doesn't have a locale concept beyond what
Intl provides.
The 3-option Auto / 12h / 24h pattern is the standard across iOS, macOS, GNOME, etc., and keeps the default a no-op.
Problem
Reset times in OpenUsage (e.g.
Resets today at 11:04) are formatted viaIntl.DateTimeFormatwith nohour12flag, so the clock format is dictated entirely by the user's OS locale. There's no way to override it.This is a problem for:
Today the only workaround is to change the OS locale itself, which affects every other app.
Proposed Solution
Add a Time Format section to Settings (next to Reset Timers) with three options:
11:04 AMstyle.11:04style.Each option's button shows a live preview of how times will render. Persisted via the existing Tauri store.
Alternatives Considered
Auto— forces every user to make an explicit choice and can't track locale changes.Intlprovides.The 3-option
Auto / 12h / 24hpattern is the standard across iOS, macOS, GNOME, etc., and keeps the default a no-op.