Reset sleep timer when brightness settings changes

Solves #1087

Also removes limit to 10char on "Brightness" on Settings page.
This commit is contained in:
Edward Firmo
2023-09-23 22:54:20 +02:00
parent 12f6bd75b5
commit 327b40ecd8

View File

@@ -517,7 +517,7 @@ api:
then:
- lambda: |-
if (not reboot.empty()) id(disp1).set_component_text_printf("settings.lbl_reboot", " %s", reboot.c_str());
id(display_wrapped_text).execute("settings.lbl_brightness", brightness.c_str(), id(display_mode) == 2 ? 25 : 10);
id(disp1).set_component_text_printf("settings.lbl_brightness", " %s", brightness.c_str());
id(display_wrapped_text).execute("settings.lbl_bright", bright.c_str(), id(display_mode) == 2 ? 25 : 10);
id(display_wrapped_text).execute("settings.lbl_dim", dim.c_str(), id(display_mode) == 2 ? 25 : 10);
@@ -1538,8 +1538,13 @@ number:
id(display_brightness_global) = int(x);
id(disp1).send_command_printf("brightness=%i", int(x));
id(disp1).send_command_printf("settings.brightslider.val=%i", int(x));
if (id(current_page).state != "screensaver") id(disp1).set_backlight_brightness(x/100);
if (id(current_page).state == "settings") id(disp1).set_component_text_printf("bright_text", "%i%%", int(x));
if (id(current_page).state != "screensaver")
{
id(disp1).set_backlight_brightness(x/100);
id(timer_dim).execute(id(current_page).state.c_str(), int(id(timeout_dim).state));
id(timer_sleep).execute(id(current_page).state.c_str(), int(id(timeout_sleep).state));
if (id(current_page).state == "settings") id(disp1).set_component_text_printf("bright_text", "%i%%", int(x));
}
##### SCREEN BRIGHTNESS DIMMED DOWN #####
- name: ${device_name} Display Brightness Dimdown
@@ -1558,7 +1563,12 @@ number:
id(display_dim_brightness_global) = int(x);
id(disp1).send_command_printf("brightness_dim=%i", int(x));
id(disp1).send_command_printf("settings.dimslider.val=%i", int(x));
if (id(current_page).state == "settings") id(disp1).set_component_text_printf("dim_text", "%i%%", int(x));
if (id(current_page).state != "screensaver" and id(is_dim_brightness))
{
id(disp1).set_backlight_brightness(x/100);
id(timer_sleep).execute(id(current_page).state.c_str(), int(id(timeout_sleep).state));
if (id(current_page).state == "settings") id(disp1).set_component_text_printf("dim_text", "%i%%", int(x));
}
##### Temperature Correction #####
- name: ${device_name} Temperature Correction
@@ -1741,8 +1751,7 @@ script:
timeout: int
then:
- lambda: |-
ESP_LOGD("script.timer_dim", "Reset timer: %is", timeout);
ESP_LOGD("script.timer_dim", "Is dim? %i", id(is_dim_brightness) ? 1 : 0);
ESP_LOGV("script.timer_dim", "Reset timer: %is", timeout);
if (id(is_dim_brightness))
{
if (page != "screensaver" and page != "boot")