[FL-2515] Keep backlight on for updater ops (#1184)
* [FL-2515] Keep backlight on for updater ops * Notification: Renamed backlight sequences to more obvious names Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
@@ -50,9 +50,9 @@ typedef enum {
|
||||
|
||||
NotificationMessageTypeDelay,
|
||||
|
||||
NotificationMessageTypeLedDisplay,
|
||||
NotificationMessageTypeLedDisplayLock,
|
||||
NotificationMessageTypeLedDisplayUnlock,
|
||||
NotificationMessageTypeLedDisplayBacklight,
|
||||
NotificationMessageTypeLedDisplayBacklightEnforceOn,
|
||||
NotificationMessageTypeLedDisplayBacklightEnforceAuto,
|
||||
|
||||
NotificationMessageTypeDoNotReset,
|
||||
|
||||
|
@@ -152,7 +152,7 @@ void notification_sound_off() {
|
||||
static void notification_display_timer(void* ctx) {
|
||||
furi_assert(ctx);
|
||||
NotificationApp* app = ctx;
|
||||
notification_message(app, &sequence_display_off);
|
||||
notification_message(app, &sequence_display_backlight_off);
|
||||
}
|
||||
|
||||
// message processing
|
||||
@@ -174,7 +174,7 @@ void notification_process_notification_message(
|
||||
|
||||
while(notification_message != NULL) {
|
||||
switch(notification_message->type) {
|
||||
case NotificationMessageTypeLedDisplay:
|
||||
case NotificationMessageTypeLedDisplayBacklight:
|
||||
// if on - switch on and start timer
|
||||
// if off - switch off and stop timer
|
||||
// on timer - switch off
|
||||
@@ -190,7 +190,7 @@ void notification_process_notification_message(
|
||||
}
|
||||
reset_mask |= reset_display_mask;
|
||||
break;
|
||||
case NotificationMessageTypeLedDisplayLock:
|
||||
case NotificationMessageTypeLedDisplayBacklightEnforceOn:
|
||||
furi_assert(app->display_led_lock < UINT8_MAX);
|
||||
app->display_led_lock++;
|
||||
if(app->display_led_lock == 1) {
|
||||
@@ -199,7 +199,7 @@ void notification_process_notification_message(
|
||||
notification_message->data.led.value * display_brightness_setting);
|
||||
}
|
||||
break;
|
||||
case NotificationMessageTypeLedDisplayUnlock:
|
||||
case NotificationMessageTypeLedDisplayBacklightEnforceAuto:
|
||||
furi_assert(app->display_led_lock > 0);
|
||||
app->display_led_lock--;
|
||||
if(app->display_led_lock == 0) {
|
||||
@@ -322,7 +322,7 @@ void notification_process_internal_message(NotificationApp* app, NotificationApp
|
||||
|
||||
while(notification_message != NULL) {
|
||||
switch(notification_message->type) {
|
||||
case NotificationMessageTypeLedDisplay:
|
||||
case NotificationMessageTypeLedDisplayBacklight:
|
||||
notification_apply_internal_led_layer(
|
||||
&app->display,
|
||||
notification_settings_get_display_brightness(
|
||||
@@ -442,7 +442,7 @@ static void input_event_callback(const void* value, void* context) {
|
||||
furi_assert(value);
|
||||
furi_assert(context);
|
||||
NotificationApp* app = context;
|
||||
notification_message(app, &sequence_display_on);
|
||||
notification_message(app, &sequence_display_backlight_on);
|
||||
}
|
||||
|
||||
// App alloc
|
||||
@@ -482,7 +482,7 @@ static NotificationApp* notification_app_alloc() {
|
||||
// display backlight control
|
||||
app->event_record = furi_record_open("input_events");
|
||||
furi_pubsub_subscribe(app->event_record, input_event_callback, app);
|
||||
notification_message(app, &sequence_display_on);
|
||||
notification_message(app, &sequence_display_backlight_on);
|
||||
|
||||
return app;
|
||||
};
|
||||
|
@@ -4,24 +4,27 @@
|
||||
|
||||
/*********************************** Messages **********************************/
|
||||
|
||||
// Display
|
||||
const NotificationMessage message_display_on = {
|
||||
.type = NotificationMessageTypeLedDisplay,
|
||||
/** Display: backlight wakeup */
|
||||
const NotificationMessage message_display_backlight_on = {
|
||||
.type = NotificationMessageTypeLedDisplayBacklight,
|
||||
.data.led.value = 0xFF,
|
||||
};
|
||||
|
||||
const NotificationMessage message_display_off = {
|
||||
.type = NotificationMessageTypeLedDisplay,
|
||||
/** Display: backlight force off */
|
||||
const NotificationMessage message_display_backlight_off = {
|
||||
.type = NotificationMessageTypeLedDisplayBacklight,
|
||||
.data.led.value = 0x00,
|
||||
};
|
||||
|
||||
const NotificationMessage message_display_lock = {
|
||||
.type = NotificationMessageTypeLedDisplayLock,
|
||||
/** Display: backlight always on */
|
||||
const NotificationMessage message_display_backlight_enforce_on = {
|
||||
.type = NotificationMessageTypeLedDisplayBacklightEnforceOn,
|
||||
.data.led.value = 0xFF,
|
||||
};
|
||||
|
||||
const NotificationMessage message_display_unlock = {
|
||||
.type = NotificationMessageTypeLedDisplayUnlock,
|
||||
/** Display: automatic backlight management, with configured timeout */
|
||||
const NotificationMessage message_display_backlight_enforce_auto = {
|
||||
.type = NotificationMessageTypeLedDisplayBacklightEnforceAuto,
|
||||
.data.led.value = 0x00,
|
||||
};
|
||||
|
||||
@@ -166,7 +169,7 @@ const NotificationSequence sequence_reset_rgb = {
|
||||
};
|
||||
|
||||
const NotificationSequence sequence_reset_display = {
|
||||
&message_display_off,
|
||||
&message_display_backlight_off,
|
||||
NULL,
|
||||
};
|
||||
|
||||
@@ -188,29 +191,31 @@ const NotificationSequence sequence_set_vibro_on = {
|
||||
};
|
||||
|
||||
// Display
|
||||
const NotificationSequence sequence_display_on = {
|
||||
&message_display_on,
|
||||
const NotificationSequence sequence_display_backlight_on = {
|
||||
&message_display_backlight_on,
|
||||
NULL,
|
||||
};
|
||||
|
||||
const NotificationSequence sequence_display_off = {
|
||||
&message_display_off,
|
||||
const NotificationSequence sequence_display_backlight_off = {
|
||||
&message_display_backlight_off,
|
||||
NULL,
|
||||
};
|
||||
|
||||
const NotificationSequence sequence_display_lock = {
|
||||
&message_display_lock,
|
||||
/** Display: backlight always on lock */
|
||||
const NotificationSequence sequence_display_backlight_enforce_on = {
|
||||
&message_display_backlight_enforce_on,
|
||||
NULL,
|
||||
};
|
||||
|
||||
const NotificationSequence sequence_display_unlock = {
|
||||
&message_display_unlock,
|
||||
/** Display: backlight always on unlock */
|
||||
const NotificationSequence sequence_display_backlight_enforce_auto = {
|
||||
&message_display_backlight_enforce_auto,
|
||||
NULL,
|
||||
};
|
||||
|
||||
const NotificationSequence sequence_display_off_delay_1000 = {
|
||||
const NotificationSequence sequence_display_backlight_off_delay_1000 = {
|
||||
&message_delay_1000,
|
||||
&message_display_off,
|
||||
&message_display_backlight_off,
|
||||
NULL,
|
||||
};
|
||||
|
||||
@@ -383,7 +388,7 @@ const NotificationSequence sequence_double_vibro = {
|
||||
};
|
||||
|
||||
const NotificationSequence sequence_success = {
|
||||
&message_display_on,
|
||||
&message_display_backlight_on,
|
||||
&message_green_255,
|
||||
&message_vibro_on,
|
||||
&message_note_c5,
|
||||
@@ -400,7 +405,7 @@ const NotificationSequence sequence_success = {
|
||||
};
|
||||
|
||||
const NotificationSequence sequence_error = {
|
||||
&message_display_on,
|
||||
&message_display_backlight_on,
|
||||
&message_red_255,
|
||||
&message_vibro_on,
|
||||
&message_note_c5,
|
||||
@@ -422,27 +427,27 @@ const NotificationSequence sequence_audiovisual_alert = {
|
||||
&message_force_display_brightness_setting_1f,
|
||||
&message_vibro_on,
|
||||
|
||||
&message_display_on,
|
||||
&message_display_backlight_on,
|
||||
&message_note_c7,
|
||||
&message_delay_250,
|
||||
|
||||
&message_display_off,
|
||||
&message_display_backlight_off,
|
||||
&message_note_c4,
|
||||
&message_delay_250,
|
||||
|
||||
&message_display_on,
|
||||
&message_display_backlight_on,
|
||||
&message_note_c7,
|
||||
&message_delay_250,
|
||||
|
||||
&message_display_off,
|
||||
&message_display_backlight_off,
|
||||
&message_note_c4,
|
||||
&message_delay_250,
|
||||
|
||||
&message_display_on,
|
||||
&message_display_backlight_on,
|
||||
&message_note_c7,
|
||||
&message_delay_250,
|
||||
|
||||
&message_display_off,
|
||||
&message_display_backlight_off,
|
||||
&message_note_c4,
|
||||
&message_delay_250,
|
||||
|
||||
|
@@ -9,15 +9,10 @@ extern "C" {
|
||||
/*********************************** Messages **********************************/
|
||||
|
||||
// Display
|
||||
|
||||
/** Display: backlight wakeup */
|
||||
extern const NotificationMessage message_display_on;
|
||||
/** Display: backlight force off */
|
||||
extern const NotificationMessage message_display_off;
|
||||
/** Display: backlight always on lock */
|
||||
extern const NotificationMessage message_display_lock;
|
||||
/** Display: backlight always on unlock */
|
||||
extern const NotificationMessage message_display_unlock;
|
||||
extern const NotificationMessage message_display_backlight_on;
|
||||
extern const NotificationMessage message_display_backlight_off;
|
||||
extern const NotificationMessage message_display_backlight_enforce_on;
|
||||
extern const NotificationMessage message_display_backlight_enforce_auto;
|
||||
|
||||
// Led ON
|
||||
extern const NotificationMessage message_red_255;
|
||||
@@ -71,15 +66,16 @@ extern const NotificationSequence sequence_set_vibro_on;
|
||||
|
||||
// Display
|
||||
/** Display: backlight wakeup */
|
||||
extern const NotificationSequence sequence_display_on;
|
||||
extern const NotificationSequence sequence_display_backlight_on;
|
||||
/** Display: backlight force off */
|
||||
extern const NotificationSequence sequence_display_off;
|
||||
/** Display: backlight always on lock */
|
||||
extern const NotificationSequence sequence_display_lock;
|
||||
/** Display: backlight always on unlock */
|
||||
extern const NotificationSequence sequence_display_unlock;
|
||||
extern const NotificationSequence sequence_display_backlight_off;
|
||||
/** Display: backlight force off after a delay of 1000ms */
|
||||
extern const NotificationSequence sequence_display_off_delay_1000;
|
||||
extern const NotificationSequence sequence_display_backlight_off_delay_1000;
|
||||
|
||||
/** Display: backlight always on lock */
|
||||
extern const NotificationSequence sequence_display_backlight_enforce_on;
|
||||
/** Display: backlight always on unlock */
|
||||
extern const NotificationSequence sequence_display_backlight_enforce_auto;
|
||||
|
||||
// Charging
|
||||
extern const NotificationSequence sequence_charging;
|
||||
|
@@ -70,7 +70,7 @@ static void backlight_changed(VariableItem* item) {
|
||||
|
||||
variable_item_set_current_value_text(item, backlight_text[index]);
|
||||
app->notification->settings.display_brightness = backlight_value[index];
|
||||
notification_message(app->notification, &sequence_display_on);
|
||||
notification_message(app->notification, &sequence_display_backlight_on);
|
||||
}
|
||||
|
||||
static void screen_changed(VariableItem* item) {
|
||||
@@ -79,7 +79,7 @@ static void screen_changed(VariableItem* item) {
|
||||
|
||||
variable_item_set_current_value_text(item, delay_text[index]);
|
||||
app->notification->settings.display_off_delay_ms = delay_value[index];
|
||||
notification_message(app->notification, &sequence_display_on);
|
||||
notification_message(app->notification, &sequence_display_backlight_on);
|
||||
}
|
||||
|
||||
const NotificationMessage apply_message = {
|
||||
|
Reference in New Issue
Block a user