fix: Improved appearance for health screen#854
Conversation
39dc806 to
9ff5ff4
Compare
gmarull
left a comment
There was a problem hiding this comment.
I prefer the current color scheme; it's just more readable. Happy to change circle back to the fixed segments, though.
@gmarull Gotcha! Just pushed a change such that the colors should now match what they were (white bg, dark red foreground). Let me know if you need additional changes! |
Thanks! please fixup original commit, we do not merge intermediate work ;-) |
|
Note we're thinking to make all the health menus lighter to make things consistent and overall more readable |
8942c1c to
e5b63c2
Compare
Done! Wasn't really sure what the guideline on that was, so thanks for clarifying! |
|
Since this seems to be derived work from pebble-dev/pebble-firmware#319, can the original author confirm it's Apache-2.0? pebble-firmware messed up licenses a while ago, so I want to be sure. |
Sure! I have confirmation from the author on Discord that it's Apache-2.0:
https://discord.com/channels/221364737269694464/1337430537132048435/1473538292879458357 |
|
pls fix CI issues |
|
Dang, seems like the tests are failing: I'm guessing they're slightly different due to the changed metrics. Is there a way to extract the generated test images from the run? In the meantime I'll try regenerating locally. |
|
yes, run tests and look into |
|
Unfortunately, seems like there might be issues running the tests on MacOS at the moment; while I can build the firmware fine, the tests always fail with mysterious linker errors: Seems someone else on the Discord was also unable to get the tests building on Mac. Edit: managed to get it working! |
The rotated 4-point square now renders properly, and the heart icon has a white background. Co-Authored-By: Stasia Michalska <hel@lcp.world> Signed-off-by: Dan Tilden <freakified@gmail.com>
e5b63c2 to
efcd088
Compare
|
Got it! Turns out it's possible to get the tests to run on Mac if you disable some various checks in the wscript: diff --git a/tests/wscript b/tests/wscript
index 8b12f6cd..63773d8e 100644
--- a/tests/wscript
+++ b/tests/wscript
@@ -374,6 +374,12 @@ def build(bld):
bld.env.append_value('CFLAGS', '-fprofile-arcs')
bld.env.append_value('CFLAGS', '-ftest-coverage')
bld.env.append_value('LINKFLAGS', '--coverage')
+
+ import sys
+ if sys.platform == 'darwin':
+ bld.env.append_value('LINKFLAGS', ['-Wl,-no_fixup_chains'])
+ bld.env.append_value('DEFINES', 'DUMA_DISABLED')
test_wscript_dirs = [os.path.dirname(f.abspath()) for f in bld.path.ant_glob('**/wscript')]
for dir in test_wscript_dirs:
bld.recurse(dir)I uploaded the new test images, so CI should pass now, hopefully. |


This change fixes the poor rendering of the rotated 4-point square in the HRM UI, and improves the contrast by adding a background color to the heart icon.
Background
In #850, the health screen contrast was improved by changing the background color to white, and by replacing the glitched square with a circle. However, this causes the heart rate screen to no longer visually mesh with the rest of the health UI (which is dark, and uses angular shapes.)
After discussion, @hellcp determined that the root cause for the glitched rectangle was incorrect metrics. By correcting these, it is now possible to display a rectangle that does not glitch:

Furthermore, the low-contrast heart graphic appears to be caused by the heart having a transparent, as opposed to white, background color. This commit should also correct this:
Screencast From 2026-02-18 08-57-23.webm
Thanks to @hellcp for figuring all this out and implementing the changes over in pebble-dev/pebble-firmware#319