[FL-1178] Idle screen improvements (#444)

* Dolphin idle screen: Cleanup of debug views; Hold [down] to open debug view; Sequential input for unlocking;
* Lock screen popup, WIP
* Fix reverse modulus
* Lock popup added
* Dolphin: timer for handling UI animation sequences
* Allow tick events to be discarded on queue overflow and prevent timer service from crash

Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
its your bedtime
2021-05-05 12:50:03 +03:00
committed by GitHub
parent 469e2dffec
commit 920b3c3dee
7 changed files with 284 additions and 194 deletions

View File

@@ -17,6 +17,7 @@
typedef enum {
DolphinEventTypeDeed,
DolphinEventTypeSave,
DolphinEventTypeTick,
} DolphinEventType;
typedef struct {
@@ -40,7 +41,7 @@ struct Dolphin {
ViewDispatcher* idle_view_dispatcher;
View* idle_view_first_start;
View* idle_view_main;
View* idle_view_up;
View* idle_view_dolphin_stats;
View* idle_view_down;
View* idle_view_meta;
View* view_hw_mismatch;
@@ -50,6 +51,8 @@ struct Dolphin {
bool locked;
uint8_t lock_count;
uint32_t lock_lastpress;
osTimerId_t timeout_timer;
};
// Temporary