Health: Add current bin in typical step text#1306
Conversation
|
(changed author and signed-off) |
893ec7e to
7833670
Compare
|
shouldn't 'typical thursday' mean, typical step count for 'thursday' (whole day)? if it's not like that, we should fix? |
|
|
Currently, the number represents how much you walked on avg until this 15 minute block. Agreed that it's confusing, which is why I did this PR :p I was trying to figure out why it differed from the debug data on the phone. I find the idea of "here's how much you've walked until this time on thursdays" to be kind of useful, because unless you lead a particular life you're not walking consistent amounts but a bit on morning, midday and evening, and so comparing to the full day's 8k when you're doing 5k of that in the evening usually would reveal a different data point. But I think it's a different datapoint, and I think displaying both would be best. An alternative I was thinking of was showing both on the lower text, then it fits into all screens better. maybe something like
|
that seems better |
7833670 to
1bd1529
Compare
|
I'm not sure it entirely makes it more understandable than the original UI? I think the bar that fills up through the day makes sense and explains that it's a progress-based number. |
|
I think that's pretty cryptic, it took me until two hours ago to figure that out and you know how long I've been using one of these :p IMO even if not in this shape, some form of clarification would be useful, as sleep has the exact same text but shows the total of the day, and the step count is showing typical until the time of day. I don't think very many realized this feature works this way. |
|
Randomly jumping in here -- I like the idea of clarifying that "TYPICAL TUE" actually means "On a typical Tuesday you have walked N steps by the current time", since it is kind of ambiguous, as @aveao noted. I was thinking @aveao's second layout could potentially work with some refinement; maybe something like this:
|
I like this last mockup! |
jplexer
left a comment
There was a problem hiding this comment.
looks good but could you maybe squash (at least 1 + 3) since the first design is essentially dead?
6dea0f4 to
47df311
Compare
47df311 to
0f94344
Compare
Redesign the activity-summary "typical" pill so it surfaces both the
bin-aware "by now" step count and the full-day weekday historical
average, side by side, on wide (>= 200px) displays. The header stays
"TYPICAL <day>"; below it a two-column row shows each number on top with
its label beneath (bin time | TOTAL) in black, separated by a 1px black
vertical divider. Narrower displays (incl. BW) stay two-line: TYPICAL
<day> over the daily total alone, since they lack room for the split.
Renderer (ui.c): split the single renderer into two functions sharing a
prv_render_typical_pill helper (background + "TYPICAL <day>" header):
- health_ui_render_typical_text_box draws one value line below the
header (35/36px pill).
- health_ui_render_split_typical_text_box draws the two-column split
(53px pill). It takes a value and label per column from the caller, so
it stays generic rather than steps-specific.
- Push the pill down by a third of HEALTH_Y_OFFSET (and the current step
count by a sixth) so spacing stays balanced on taller displays; zero
on legacy-sized displays where the offset is 0.
- On round, narrow the column band so the two halves sit closer to
center instead of marooned at the display edges.
Activity card: prv_render_typical_steps formats the values and labels
(incl. i18n_get("TOTAL") and the bin time) and routes by display width
with #if DISP_COLS >= 200. Wide displays with typical data get the
split; narrow displays, and the no-typical-data case on wide displays,
show the single daily-total line (em-dash when that is missing too).
Data layer: add health_data_steps_get_current_average_minute, a
health-app-internal accessor returning the minute-of-day of the latest
completed step-average bin (cached by the preceding
health_data_steps_get_current_average call).
Sleep card: call the single-value renderer.
Test fixture: pin RTC to Saturday 16:19:35 UTC with 24h clock so the
rendered "16:15" bin time is deterministic; seed
step_average_last_updated_time per case. Regenerate activity, sleep, and
card-view goldens on obelix/gabbro.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Signed-off-by: Ave Özkal <git@ave.zone>
0f94344 to
af2eef6
Compare
|
Regarding readability, another thing to consider is that on the Time 2 and Round 2, the fonts should all probably be bumped up by 1 size to match other font size increases throughout the OS on those platforms (Presumably this would be in a future PR) |
|
what about a "dark yellow"? |
|
Yeah, there's no dark yellow, and closest is army green, which I tried both on device and simulated colors and it looked almost identical to dark gray. |
|
first of all, sorry ave you gotta regenerate those fixtures 😆 |
















Turns out the "typical " text represents the typical amount of steps on that day up to the 15 minute minute block you're on :D
Caught this while taking a shot at coredevices/mobileapp#192
This changes that text to "Typical " so that it's clear what it's representing (and ideally should not require translation changes), plus it widens the pill for typical and moves it down slightly on larger screens (emery and gabbro) so that the whole view appears more spacious. Rest of health view needs re-scaling too, but this is hopefully a good starting point.
Before & After: