Widgets: bars countdown widget + unified slate/orange theme (KC-15)
- New EventBarsWidget ("Event Countdown (Bars)") using BarGrid + EventBarsView,
with a fine "X hr, Y min left" label; registered in the bundle.
- Re-themed every home-screen widget to the shared WidgetTheme (dark slate
background + brand orange): Day Progress, Tasks Done Today, Event Countdown
(dots), My Tasks. Lock-screen widgets keep .thinMaterial (system-tinted).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -458,3 +458,27 @@ Files: `ExerciseModels.swift`, `WorkoutView.swift`.
|
||||
Stats are computed from the app's own per-day logs. Health (steps/kcal/resting HR +
|
||||
workout dates) is already read on the Today dashboard and merged into the streak;
|
||||
a Health overlay on this screen could be added later.
|
||||
|
||||
---
|
||||
|
||||
## KC-15 — Bars countdown widget + unified slate/orange widget theme
|
||||
|
||||
**Status:** In Progress (implemented & build-verified, pending device build)
|
||||
**Reported by:** User
|
||||
**Area:** Widgets
|
||||
|
||||
### Description
|
||||
Add a bar-meter event-countdown widget (per reference screenshot) and re-theme
|
||||
every widget to one look: dark slate background + brand orange, matching the app.
|
||||
|
||||
### Fix
|
||||
- `WidgetTheme` (slate background `RGB(0.224,0.255,0.31)`, brand orange accent).
|
||||
- `BarGrid` vertical-bar progress view; new `EventBarsView` + `EventBarsWidget`
|
||||
("Event Countdown (Bars)", medium) reusing the existing event config/provider.
|
||||
- `EventEntry.fineTimeLeft` (days → "X hr, Y min left") for the bars label.
|
||||
- Re-themed all home-screen widgets to slate bg + orange: Day Progress, Tasks Done
|
||||
Today, Event Countdown (dots), My Tasks. Lock-screen accessory widgets stay on
|
||||
`.thinMaterial` (system-tinted on the Lock Screen).
|
||||
|
||||
Files: `WidgetViews.swift`, `EventCountdownWidget.swift`, `MyTasksWidget.swift`,
|
||||
`KisaniCalWidgets.swift`.
|
||||
|
||||
Reference in New Issue
Block a user