Improved the Terminal Watchfaces UI
These changes were originally proposed in PR #2001 along with the addition of weather data on it's own line, but it was suggested they be seperated. This PR is just the UI improvements without the weather, and #2001 will add the weather.
-
Reorder code to match the widgets order in the UI.
-
Use InfintimeTheme Colors instead of hardcoded hex values
-
Added a new InfinitimeTheme color: gray, using it to turn certain values gray when they contain no data
-
Implement @vkareh's variable battery icon color to the battery percentage text.
-
Replaced the 'You have mail.' notification message with the message '[1]+ Notify' to better fit the terminal lore.
Build size and comparison to main:
| Section | Size | Difference |
|---|---|---|
| text | 383132B | 256B |
| data | 944B | 0B |
| bss | 22632B | 0B |
Love the new steps colour and notification indicator :) though, if we're leaning into the terminal watch face "lore", shouldn't the prompts stay white? It also looks a little busy to have two different colours at the starts of lines, especially when [1]+ Notify is visible.
I think the non-info lines being dimmer might be nice, even if it doesn't quite match lore. Tho tbh I've never used full white text in a terminal anyway.
Moved the objects (label, rows, idk what to call them) into a container to avoid having to position each of them individually. This also allows easily adding and removing objects in the future without having to modify multiple position values. As far as I can tell there isn't a visual difference from before:
Adding the colour code here LGTM I think we should integrate this while we're here: https://github.com/InfiniTimeOrg/InfiniTime/pull/1964#issuecomment-2923352824 should be a quick formula tweak (using floating point is fine IMO we have a very capable FPU)
Rest looks good to me but only have had a quick glance, will review properly ASAP