v2.0.0 — Watchdog and UI Overhaul
Highlights
🐕 Drive Watchdog
Polls every 20 s and reacts when a share drops. With auto-connect enabled it
retries with backoff (5 s → 15 s → 45 s, capped at 5 min) on its own loop, so a
drive that is still down at the next poll keeps getting attempts instead of
being forgotten.
🎨 Redesigned interface
- New palette sampled from the logo, and OpenSans with a real type scale
replaces mono everywhere — mono is now reserved for data: drive letters,
counters, timestamps. - Add drive is the dashboard's primary button and an empty-state CTA
instead of being reachable only from the menu bar. - Drive status is a labelled pill (Connected / Disconnected) that is the
toggle, with a busy lock so double-clicks can't stack mounts. - Modal transitions went 800 ms → ~190 ms, and sheets dismiss on scrim click
and Escape. - Show credentials toggle: the NAS address and share username were
permanently masked, so you couldn't check a typo. - Empty states for drives and audit logs, settings toggles that explain what
they do (16 new strings, translated across de/fr/id/ja/nl), consistent hover
animation and a real hand cursor. - Sidebar is now a labelled rail with an active indicator and the signed-in user.
⚙️ .NET 10
Upgraded from .NET 9, with MAUI and CommunityToolkit packages brought up to
date. Build warnings went 186 → 0: every [ObservableProperty] field became a
partial property across 20 files, which is the AOT/WinRT-correct form.