-
-
Notifications
You must be signed in to change notification settings - Fork 938
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
settings: Add global widget selection #1959
base: main
Are you sure you want to change the base?
Conversation
Build size and comparison to main:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is very useful, thanks!
ca33109
to
4eeadff
Compare
I think you could use the You can find it in |
@minacode the badly-named |
Oh, ok. Maybe we should rename it to something like Do you think you could still extract an abstract component from your implementation? I could imagine that an actual checkbox list is common enough. Maybe it doesn't make sense though. That would be ok. I am just asking. |
a02aef7
to
039506d
Compare
No, the name is based on the lvgl library, which uses checkbox as the naming. There is no radio component in lvgl, so the checkboxlist class emulates the radio behaviour by re-theming the checkboxes and overriding the select mechanism.
I did an initial PoC, but it means that now CheckboxList needs to return arrays of settings, whether it's a checkbox or a radio. This and the additional code required to make that work makes the entire thing to complex/bloated.
I can poke at it some more at another time, but likely out of scope for this PR. |
Ok, nice. Thanks for the detailed answer. Given that, I think your PR is fine the way it is now :) |
I've added new commits for configurable widgets on the Analog watch face. Attached screenshots to the description on top. |
d54ae36
to
168d9ca
Compare
49d5ec3
to
efdeebf
Compare
efdeebf
to
8f10997
Compare
8f10997
to
eb9e02b
Compare
eb9e02b
to
a673de8
Compare
a673de8
to
8e10a2d
Compare
8e10a2d
to
c70d185
Compare
c70d185
to
291920e
Compare
5f365d9
to
42bc7d6
Compare
42bc7d6
to
3f8361a
Compare
7e62cde
to
3fda05d
Compare
3fda05d
to
8fff157
Compare
8fff157
to
e9bafa8
Compare
Instead of each watch face implementing their own settings for which widgets to display, we can have a global selection of widgets. All watch faces can then determine whether it is enabled and so display it in whichever way makes sense for that face. Current widgets supported are heart rate, step counter, and weather.
e9bafa8
to
d465d6c
Compare
Instead of each watch face implementing their own settings for which widgets to display, we can have a global selection of widgets. All watch faces can then determine whether it is enabled and so display it in whichever way makes sense for that face.
Current widgets supported are heart rate, step counter, and weather.
Widgets off:
Widgets on: