InfiniTimeOrg / InfiniTimeOrg/InfiniTime
Battery indicator level tweaks
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 3.4k
- Forks
- 1.1k
- PR merge metrics
- No merged PRs in 30d
Description
Verification
- I searched for similar issues (including closed issues) and found none was relevant.
Introduce the issue
I'm primarily using the PineTimeStyle, but I suspect it doesn't matter.
- Charge battery to 99%, and the battery level indicator on the main clock display shows one pixel height already drained. In my mind, it's so close to 100%, that it should still appear as a full battery indicator.
- At low battery, I can't remember if it is 10% or 15%, but swipe to the menu on the left, and you see the battery indicator in orange, so it is understood it is a low battery. But on the main clock display, it always shows the indicator as white, and is hard to see how low the indicator is for anything below about 20-25%.
Preferred solution
- Round to the nearest, instead of rounding down. If there are 10 pixels height in the battery, it should be: 95-100%: full 10 pixels, 85-94%: 9 pixels, 75-84%: 8 pixels, ... 5-14%: 1 pixel, 0-4%: 0 pixels. Or similar - don't mind if it is 0-5%, 6-15%, etc.
- I suggest putting the same orange battery indicator on the main clock display when the battery is below 15% (or 10% or whatever the threshold is). It currently turns red for 5% (?) and below, so I like that.
One consideration is that the watch face allows a custom colour for each component, and in fact, I do currently have PineTimeStyle with all orange colour highlights. So orange on orange would be invisible. The battery icon on the main watch fact currently has a black outline. Perhaps the battery icon could have a black outer border and a white inner outline, which changes to orange/red outline at low battery??
Version
1.15.0
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the battery indicator used on the main clock display and the left-side menu, including their battery-level thresholds and color handling. Check whether watch-face custom colors and the existing red low-battery state are covered by tests. Done means the fill rounds as requested and low battery uses a visible orange or red treatment without breaking custom watch-face colors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- embedded-iot
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100