Skip to content

Conversation

@MitchMitch42
Copy link

@MitchMitch42 MitchMitch42 commented Nov 3, 2025

Added the possibility to have more than one submenu, by replacing MOVEMENT_SECONDARY_FACE_INDEX with an array.

If there is just one submenu, as per default, the behavior is identical to the prior implementation.
If you add more than one submenu, you can reach them by by holding the mode button in the first face.
If you add 0 as the last submenu index, it switches back to the main menu after the last submenu is reached.

I use ~21 faces in my personal build, and spliting them into 4 menus which are easy to reach enhances the availability a lot. Also snapping back to the main menu after the last submenu feels smooth.

Also, this implementation fixes a bug in the prior implementation: when you had no submenu defined (by having MOVEMENT_SECONDARY_FACE_INDEX set to 0), if you long pressed the mode button in the first face, you heard a beep- as the program tried to switch back to the first face (which was alredy displayed). This happened due to an incorrect if-statement in movement.c line 263 (the if-statement should actually be two statements).

Tested on simulator and real hardware (sensorwatch pro with classic display).

Added the possibility to have more than one submenu.
User can flip trough the submenus by holding the mode button in the first face.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant