Widgets, Accessibility, & Latency Logging—your DNS stats, for everyone. Home and lock screen widgets to monitor stats at a glance, comprehensive VoiceOver support, and latency logging to track connection quality over time.
🆕
What's New
- Home Screen Widgets: Small (2×2) and Medium (4×2) sizes showing total queries, blocked count, blocked percentage, and trend charts
- Lock Screen Widgets: Three styles for iOS 16+—circular gauge, rectangular stats with sparkline, and inline text
- Widget Configuration: Choose your preferred time range (Hour, Day, Week, Month, Year) for each widget
- Widgets Guide: New Settings page with video tutorials showing exactly how to add and configure widgets
- VoiceOver Support: Full accessibility across all views—profiles, devices, stats, logs, and settings
- Audio Graph: Hear your query activity and latency charts as audio tones using VoiceOver's Audio Graph feature
- Meaningful Labels: Every interactive element and data display now has proper accessibility descriptions
- Latency Logging: Track DNS and proxy latency over time with detailed statistics and interactive charts
- Latency Statistics: View min, avg, max, P50, P75, P90, P95, and P99 percentiles for your connection quality
- Latency Chart: Visualize latency trends with smooth or sharp chart interpolation options
✨
Improvements
- Screen Reader Navigation: Logical element grouping for efficient VoiceOver navigation
- Status View: Each row reads as a single element (e.g., "DNS Latency: 45 milliseconds")
- Live Logs Announcements: New entries announced with domain and action details
- Geographic Tabs: Work as adjustable picker with swipe gestures
- Compact Number Formatting: Large numbers display as 1.2K, 3.4M for better readability
- Shared Module: New ControlDShared package enabling code sharing between app and widgets
- Settings Organization: Widgets documentation and latency log now accessible from Settings
🐛
Bug Fixes
- Fixed timestamp parsing for Analytics V2 API responses with variable-length fractional seconds
- Fixed pluralization issues ("endpointss", "Custom Ruless")
- Fixed missing vertical spacing between status pill and IP pill in custom rules