RFID: fix read info screen (#1723)

* RFID: fix read info screen
* Fix line break for long data string
* Protocol data redecoding before write

Co-authored-by: SG <who.just.the.doctor@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
Nikolay Minaylov
2022-09-19 16:21:40 +03:00
committed by GitHub
parent d80329b323
commit fb476c29e6
15 changed files with 65 additions and 6 deletions

View File

@@ -24,14 +24,13 @@ void lfrfid_scene_read_success_on_enter(void* context) {
uint8_t* data = (uint8_t*)malloc(size);
protocol_dict_get_data(app->dict, app->protocol_id, data, size);
for(uint8_t i = 0; i < size; i++) {
if(i != 0) {
string_cat_printf(tmp_string, " ");
}
if(i >= 9) {
string_cat_printf(tmp_string, "...");
string_cat_printf(tmp_string, "..");
break;
} else {
if(i != 0) {
string_cat_printf(tmp_string, " ");
}
string_cat_printf(tmp_string, "%02X", data[i]);
}
}
@@ -43,7 +42,7 @@ void lfrfid_scene_read_success_on_enter(void* context) {
string_cat_printf(tmp_string, "\r\n%s", string_get_cstr(render_data));
string_clear(render_data);
widget_add_string_element(
widget_add_string_multiline_element(
widget, 0, 16, AlignLeft, AlignTop, FontSecondary, string_get_cstr(tmp_string));
notification_message_block(app->notifications, &sequence_set_green_255);