[FL-3118] Dumb mode menu freeze fix (#2456)

Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
Astra 2023-03-09 10:24:47 +02:00 committed by GitHub
parent 5be15152eb
commit 50ef5deefc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 0 deletions

View File

@ -144,11 +144,13 @@ void desktop_unlock(Desktop* desktop) {
}
void desktop_set_dummy_mode_state(Desktop* desktop, bool enabled) {
desktop->in_transition = true;
view_port_enabled_set(desktop->dummy_mode_icon_viewport, enabled);
desktop_main_set_dummy_mode_state(desktop->main_view, enabled);
animation_manager_set_dummy_mode_state(desktop->animation_manager, enabled);
desktop->settings.dummy_mode = enabled;
DESKTOP_SETTINGS_SAVE(&desktop->settings);
desktop->in_transition = false;
}
Desktop* desktop_alloc() {

View File

@ -69,6 +69,8 @@ struct Desktop {
FuriPubSub* input_events_pubsub;
FuriPubSubSubscription* input_events_subscription;
FuriTimer* auto_lock_timer;
bool in_transition;
};
Desktop* desktop_alloc();

View File

@ -79,6 +79,7 @@ static void desktop_scene_main_open_app_or_profile(Desktop* desktop, const char*
void desktop_scene_main_callback(DesktopEvent event, void* context) {
Desktop* desktop = (Desktop*)context;
if(desktop->in_transition) return;
view_dispatcher_send_custom_event(desktop->view_dispatcher, event);
}