[FL-1723, FL-1662, FL-1870] NFC bug fixes (#745)

* nfc: fix notifications in read EMV sequence
* nfc: set focus on previously saved card
* nfc: add incorrect file format message
* mifare ultralight: increase size of max dump
* elements: draw multiline text only until it fits screen
* nfc: support variable PAN number length
* nfc: change AID display
* nfc: change worker custom event to prevent scene reenter
* nfc: double check for PAN tag
* nfc: fix edit card name appearance
* Nfc: read EMV card without name if PDOL is present.
* Desktop: increase unlock key press interval, switch to OS ticks instead of HAL.
* Desktop: remove debug logging

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
This commit is contained in:
gornekich
2021-10-05 08:14:19 +03:00
committed by GitHub
parent 73a13f584f
commit 42e553bad5
24 changed files with 89 additions and 57 deletions

7
applications/nfc/scenes/nfc_scene_read_emv_data.c Normal file → Executable file
View File

@@ -1,6 +1,6 @@
#include "../nfc_i.h"
#define NFC_READ_EMV_DATA_CUSTOM_EVENT (0UL)
#define NFC_READ_EMV_DATA_CUSTOM_EVENT (10UL)
void nfc_read_emv_data_worker_callback(void* context) {
Nfc* nfc = (Nfc*)context;
@@ -32,6 +32,8 @@ bool nfc_scene_read_emv_data_on_event(void* context, SceneManagerEvent event) {
if(event.type == SceneManagerEventTypeCustom) {
if(event.event == NFC_READ_EMV_DATA_CUSTOM_EVENT) {
scene_manager_set_scene_state(
nfc->scene_manager, NfcSceneReadEmvDataSuccess, NFC_SEND_NOTIFICATION_TRUE);
scene_manager_next_scene(nfc->scene_manager, NfcSceneReadEmvDataSuccess);
return true;
}
@@ -48,9 +50,6 @@ void nfc_scene_read_emv_data_on_exit(void* context) {
// Stop worker
nfc_worker_stop(nfc->worker);
// Send notification
notification_message(nfc->notifications, &sequence_success);
// Clear view
Popup* popup = nfc->popup;
popup_set_header(popup, NULL, 0, 0, AlignCenter, AlignBottom);