fix ui
All checks were successful
FAP Build / ufbt: Build for Momentum dev (push) Successful in 37s
FAP Build / ufbt: Build for OFW dev channel (push) Successful in 41s
FAP Build / ufbt: Build for OFW release channel (push) Successful in 38s
FAP Build / ufbt: Build for Momentum release (push) Successful in 1m15s
FAP Build / ufbt: Build for Unleashed dev (push) Successful in 49s
FAP Build / ufbt: Build for Unleashed release (push) Successful in 47s

This commit is contained in:
MX
2026-02-12 03:46:03 +03:00
parent 33c19c9e97
commit 602b24ee41
3 changed files with 16 additions and 9 deletions

View File

@@ -1,6 +1,7 @@
// scenes/protopirate_scene_receiver.c
#include "../protopirate_app_i.h"
#include "../helpers/protopirate_storage.h"
#include "views/protopirate_receiver.h"
#include <notification/notification_messages.h>
#define TAG "ProtoPirateSceneRx"
@@ -40,15 +41,11 @@ static void protopirate_scene_receiver_update_statusbar(void* context) {
is_external = radio_device_loader_is_external(app->txrx->radio_device);
}
// Show auto-save indicator in the history count area
if(app->auto_save) {
furi_string_printf(
history_stat_str,
"%u/%u",
protopirate_history_get_item(app->txrx->history),
PROTOPIRATE_DISPLAY_HISTORY_MAX);
}
furi_string_printf(
history_stat_str,
"%u/%u",
protopirate_history_get_item(app->txrx->history),
PROTOPIRATE_DISPLAY_HISTORY_MAX);
// Pass actual external radio status
protopirate_view_receiver_add_data_statusbar(
app->protopirate_receiver,
@@ -250,6 +247,9 @@ void protopirate_scene_receiver_on_enter(void* context) {
// Update lock state in view
protopirate_view_receiver_set_lock(app->protopirate_receiver, app->lock);
// Update auto-save state in view
protopirate_view_receiver_set_autosave(app->protopirate_receiver, app->auto_save);
//Not in Sub Decode Mode
protopirate_view_receiver_set_sub_decode_mode(app->protopirate_receiver, false);

View File

@@ -92,6 +92,12 @@ void protopirate_view_receiver_set_lock(ProtoPirateReceiver* receiver, ProtoPira
receiver->view, ProtoPirateReceiverModel * model, { model->lock = lock; }, true);
}
void protopirate_view_receiver_set_autosave(ProtoPirateReceiver* receiver, bool auto_save) {
furi_check(receiver);
with_view_model(
receiver->view, ProtoPirateReceiverModel * model, { model->auto_save = auto_save; }, true);
}
void protopirate_view_receiver_set_callback(
ProtoPirateReceiver* receiver,
ProtoPirateReceiverCallback callback,

View File

@@ -33,6 +33,7 @@ uint16_t protopirate_view_receiver_get_idx_menu(ProtoPirateReceiver* receiver);
void protopirate_view_receiver_set_idx_menu(ProtoPirateReceiver* receiver, uint16_t idx);
void protopirate_view_receiver_set_rssi(ProtoPirateReceiver* receiver, float rssi);
void protopirate_view_receiver_set_lock(ProtoPirateReceiver* receiver, ProtoPirateLock lock);
void protopirate_view_receiver_set_autosave(ProtoPirateReceiver* receiver, bool auto_save);
void protopirate_view_receiver_set_sub_decode_mode(
ProtoPirateReceiver* receiver,
bool sub_decode_mode);