New look for settings and less duplicate code #442
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I created a new CheckBoxes screen that apps can use to display options. It works similar to Tile and List.
Apps provide the title and an array of Options. This array is updated by the CheckBoxes screen when an option is picked. On exit, the previous app can check the array for changes, and handle them appropriately.
All of the settings screens which used checkboxes have been converted to use the new CheckBoxes screen. A lot of duplicate code has been removed.
EDIT: I was thinking if the 6 button layout should be separated from CheckBoxes. Soon we might have more than four watch faces for example, and since the names are quite long, they wouldn't fit in that layout. This however is easy to work around by simply adding scrolling like in List to CheckBoxes, and only providing four options for a single page. So in the end I don't think it should be separated to reduce duplicate code.