From f4b30cdbc7cc112a7e8d7ca129fa0fd90a0eee8e Mon Sep 17 00:00:00 2001 From: WillyJL Date: Sun, 19 Apr 2026 23:45:17 +0200 Subject: [PATCH] Sub-GHz: Fix display of memory full --- CHANGELOG.md | 1 + applications/main/subghz/scenes/subghz_scene_receiver.c | 4 ++-- applications/main/subghz/subghz_history.c | 4 ++-- applications/main/subghz/views/receiver.c | 6 ++++-- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bab67b77d..44b2643f3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -75,6 +75,7 @@ ### Fixed: - Sub-GHz: + - Fix display of memory full (by @WillyJL) - UL: Fixed button mapping for FAAC RC/XT (by @xMasterX) - UL: Possible Sommer timings fix (by @xMasterX) - UL: Various fixes and cleanup (by @xMasterX) diff --git a/applications/main/subghz/scenes/subghz_scene_receiver.c b/applications/main/subghz/scenes/subghz_scene_receiver.c index 10a6c141c..65dfd475e 100644 --- a/applications/main/subghz/scenes/subghz_scene_receiver.c +++ b/applications/main/subghz/scenes/subghz_scene_receiver.c @@ -97,9 +97,9 @@ static void subghz_scene_receiver_update_statusbar(void* context) { } else { subghz_view_receiver_add_data_statusbar( subghz->subghz_receiver, + "", + "", furi_string_get_cstr(history_stat_str), - "", - "", subghz_txrx_hopper_get_state(subghz->txrx) != SubGhzHopperStateOFF, READ_BIT(subghz->filter, SubGhzProtocolFlag_BinRAW) > 0, show_sats, diff --git a/applications/main/subghz/subghz_history.c b/applications/main/subghz/subghz_history.c index 697c9ff5b..0bbd72391 100644 --- a/applications/main/subghz/subghz_history.c +++ b/applications/main/subghz/subghz_history.c @@ -199,11 +199,11 @@ bool subghz_history_get_text_space_left( furi_assert(instance); if(!ignore_full) { if(memmgr_get_free_heap() < SUBGHZ_HISTORY_FREE_HEAP) { - if(output != NULL) furi_string_printf(output, " Memory is FULL"); + if(output != NULL) furi_string_set(output, "Memory is FULL"); return true; } if(instance->last_index_write == SUBGHZ_HISTORY_MAX) { - if(output != NULL) furi_string_printf(output, " History is FULL"); + if(output != NULL) furi_string_set(output, "History is FULL"); return true; } } diff --git a/applications/main/subghz/views/receiver.c b/applications/main/subghz/views/receiver.c index 47772ac2d..960cbd38c 100644 --- a/applications/main/subghz/views/receiver.c +++ b/applications/main/subghz/views/receiver.c @@ -435,8 +435,10 @@ void subghz_view_receiver_draw(Canvas* canvas, SubGhzViewReceiverModel* model) { canvas_draw_str(canvas, 44, 62, frequency_str); #ifdef SUBGHZ_EXT_PRESET_NAME if(model->history_item == 0 && model->mode == SubGhzViewReceiverModeLive) { - canvas_draw_str( - canvas, 44 + canvas_string_width(canvas, frequency_str) + 1, 62, "MHz"); + if(*frequency_str) { + canvas_draw_str( + canvas, 44 + canvas_string_width(canvas, frequency_str) + 1, 62, "MHz"); + } const char* str = furi_string_get_cstr(model->preset_str); const uint8_t vertical_offset = 7; const uint8_t horizontal_offset = 3;