diff --git a/applications/main/lfrfid/lfrfid_i.h b/applications/main/lfrfid/lfrfid_i.h index b574a4e49..cff2c6cc4 100644 --- a/applications/main/lfrfid/lfrfid_i.h +++ b/applications/main/lfrfid/lfrfid_i.h @@ -66,7 +66,6 @@ enum LfRfidCustomEvent { LfRfidEventWriteTooLongToWrite, LfRfidEventRpcLoadFile, LfRfidEventRpcSessionClose, - LfRfidEventEmulationTimeExpired, }; typedef enum { diff --git a/applications/main/lfrfid/scenes/lfrfid_scene_emulate.c b/applications/main/lfrfid/scenes/lfrfid_scene_emulate.c index 59fbb54d6..dc3918994 100644 --- a/applications/main/lfrfid/scenes/lfrfid_scene_emulate.c +++ b/applications/main/lfrfid/scenes/lfrfid_scene_emulate.c @@ -1,14 +1,5 @@ #include "../lfrfid_i.h" -#define LFRFID_EMULATION_TIME_MAX_MS (5 * 60 * 1000) - -FuriTimer* timer; - -void lfrfid_scene_emulate_popup_callback(void* context) { - LfRfid* app = context; - view_dispatcher_send_custom_event(app->view_dispatcher, LfRfidEventEmulationTimeExpired); -} - void lfrfid_scene_emulate_on_enter(void* context) { LfRfid* app = context; Popup* popup = app->popup; @@ -31,36 +22,18 @@ void lfrfid_scene_emulate_on_enter(void* context) { lfrfid_worker_emulate_start(app->lfworker, (LFRFIDProtocol)app->protocol_id); notification_message(app->notifications, &sequence_blink_start_magenta); - timer = furi_timer_alloc(lfrfid_scene_emulate_popup_callback, FuriTimerTypeOnce, app); - furi_timer_start(timer, LFRFID_EMULATION_TIME_MAX_MS); - view_dispatcher_switch_to_view(app->view_dispatcher, LfRfidViewPopup); } bool lfrfid_scene_emulate_on_event(void* context, SceneManagerEvent event) { - LfRfid* app = context; + UNUSED(context); + UNUSED(event); bool consumed = false; - - if(event.type == SceneManagerEventTypeCustom) { - if(event.event == LfRfidEventEmulationTimeExpired) { - if(!scene_manager_previous_scene(app->scene_manager)) { - scene_manager_stop(app->scene_manager); - view_dispatcher_stop(app->view_dispatcher); - } else { - scene_manager_previous_scene(app->scene_manager); - } - consumed = true; - } - } - return consumed; } void lfrfid_scene_emulate_on_exit(void* context) { LfRfid* app = context; - - furi_timer_free(timer); - notification_message(app->notifications, &sequence_blink_stop); popup_reset(app->popup); lfrfid_worker_stop(app->lfworker); diff --git a/applications/main/nfc/helpers/nfc_custom_event.h b/applications/main/nfc/helpers/nfc_custom_event.h index 86fcdd3d3..16fbc4749 100644 --- a/applications/main/nfc/helpers/nfc_custom_event.h +++ b/applications/main/nfc/helpers/nfc_custom_event.h @@ -30,6 +30,4 @@ typedef enum { NfcCustomEventPollerFailure, NfcCustomEventListenerUpdate, - - NfcCustomEventEmulationTimeExpired, } NfcCustomEvent; diff --git a/applications/main/nfc/scenes/nfc_scene_emulate.c b/applications/main/nfc/scenes/nfc_scene_emulate.c index 60be11a62..6f217f315 100644 --- a/applications/main/nfc/scenes/nfc_scene_emulate.c +++ b/applications/main/nfc/scenes/nfc_scene_emulate.c @@ -1,45 +1,13 @@ #include "../helpers/protocol_support/nfc_protocol_support.h" -#include "nfc_app_i.h" - -#define NFC_EMULATION_TIME_MAX_MS (5 * 60 * 1000) - -FuriTimer* timer; - -void nfc_scene_emulate_timer_callback(void* context) { - NfcApp* instance = context; - - view_dispatcher_send_custom_event( - instance->view_dispatcher, NfcCustomEventEmulationTimeExpired); -} - void nfc_scene_emulate_on_enter(void* context) { - NfcApp* instance = context; - nfc_protocol_support_on_enter(NfcProtocolSupportSceneEmulate, context); - - timer = furi_timer_alloc(nfc_scene_emulate_timer_callback, FuriTimerTypeOnce, instance); - furi_timer_start(timer, NFC_EMULATION_TIME_MAX_MS); } bool nfc_scene_emulate_on_event(void* context, SceneManagerEvent event) { - NfcApp* instance = context; - - if(event.type == SceneManagerEventTypeCustom) { - if(event.event == NfcCustomEventEmulationTimeExpired) { - if(!scene_manager_previous_scene(instance->scene_manager)) { - scene_manager_stop(instance->scene_manager); - view_dispatcher_stop(instance->view_dispatcher); - } else { - scene_manager_previous_scene(instance->scene_manager); - } - return true; - } - } return nfc_protocol_support_on_event(NfcProtocolSupportSceneEmulate, context, event); } void nfc_scene_emulate_on_exit(void* context) { - furi_timer_free(timer); nfc_protocol_support_on_exit(NfcProtocolSupportSceneEmulate, context); }