DisplayDriver: fixing alignment issue in vtable for nrf52 and epd display

This commit is contained in:
Florent committed 2026-10-21 17:13:27 -04:00
1 parent a31e2c92df
commit 408d674ace
8 files changed
+18 -9

No files matched your search

+5 -1
View File
@@ -955,7 +955,9 @@ void UITask::loop() {
if (ev == BUTTON_EVENT_CLICK) {
c = checkDisplayOn(KEY_ENTER);
} else if (ev == BUTTON_EVENT_LONG_PRESS) {
display.blankScreen();
display.turnOff();
display.powerOff();
} else if (ev == BUTTON_EVENT_DOUBLE_CLICK) {
c = handleDoubleClick(KEY_SELECT);
} else if (ev == BUTTON_EVENT_TRIPLE_CLICK) {
@@ -1016,6 +1018,7 @@ void UITask::loop() {
} else if (bev == BUTTON_EVENT_TRIPLE_CLICK) {
_display->blankScreen();
_display->turnOff();
_display->powerOff();
backlight_btn_pressed_at = 0;
}
#if defined(DISP_BACKLIGHT)
@@ -1073,7 +1076,8 @@ void UITask::loop() {
if (millis() > _auto_off) {
#ifdef EINK_SCREENOFF_BLANK
if (curr != msg_preview) { // don't blank if messages are waiting
display.blankScreen();
_display->blankScreen();
_display->powerOff();
}
#endif
_display->turnOff();
+2 -1
View File
@@ -26,8 +26,9 @@ public:
virtual void forceFullRefresh() {} // next refresh will be full for eink
virtual void turnOn() = 0;
virtual void turnOff() = 0;
virtual void clear() = 0;
virtual void blankScreen() {} // to cleanly erase screen before turning off
virtual void powerOff() {}
virtual void clear() = 0;
virtual void startFrame(ColorVal bkg = UIColor::window_bkg) = 0;
virtual void setTextSize(int sz) = 0;
virtual void setColor(ColorVal c) = 0;
+5 -2
View File
@@ -75,7 +75,11 @@ void GxEPDDisplay::turnOn() {
}
}
void GxEPDDisplay::turnOff() {
void GxEPDDisplay::powerOff() {
display.hibernate();
}
void GxEPDDisplay::turnOff() { // Only stops refresh
#if defined(DISP_BACKLIGHT) && !defined(BACKLIGHT_BTN)
digitalWrite(DISP_BACKLIGHT, LOW);
#elif defined(EXP_PIN_BACKLIGHT) && !defined(BACKLIGHT_BTN)
@@ -83,7 +87,6 @@ void GxEPDDisplay::turnOff() {
#endif
_isOn = false;
last_display_crc_value=0;
display.hibernate();
}
void GxEPDDisplay::blankScreen() {
+2 -1
View File
@@ -60,8 +60,9 @@ public:
void resetPartialRefreshCounter() { _cycles_before_full_refresh = max_partial_refresh; };
void turnOn() override;
void turnOff() override;
void clear() override;
void blankScreen() override;
void powerOff() override;
void clear() override;
void startFrame(ColorVal bkg = UIColor::window_bkg) override;
void setTextSize(int sz) override;
void setColor(ColorVal c) override;
+1 -1
View File
@@ -36,7 +36,7 @@ build_flags = ${nrf52_base.build_flags}
-D UI_RECENT_LIST_SIZE=9
-D UI_MSG_PREVIEW_SIZE=165
-D EINK_MAX_PARTIAL_REFRESH=60
-D AUTO_OFF_MILLIS=1800000
-D AUTO_OFF_MILLIS=900000
-D BACKLIGHT_BTN=PIN_BUTTON2
build_src_filter = ${nrf52_base.build_src_filter}
+<helpers/*.cpp>
+1 -1
View File
@@ -28,7 +28,7 @@ build_flags = ${nrf52_base.build_flags}
-D UI_MSG_PREVIEW_SIZE=165
-D EINK_MAX_PARTIAL_REFRESH=60
-D BACKLIGHT_BTN=PIN_BUTTON2
-D AUTO_OFF_MILLIS=1800000
-D AUTO_OFF_MILLIS=900000
-D UI_NO_HIBERNATE
-D DISABLE_DIAGNOSTIC_OUTPUT
build_src_filter = ${nrf52_base.build_src_filter}
+1 -1
View File
@@ -30,7 +30,7 @@ build_flags = ${esp32_base.build_flags}
-D UI_MSG_PREVIEW_SIZE=165
-D EINK_MAX_PARTIAL_REFRESH=60
-D BACKLIGHT_BTN=PIN_BUTTON2
-D AUTO_OFF_MILLIS=1800000
-D AUTO_OFF_MILLIS=900000
-D UI_NO_HIBERNATE
-D DISABLE_DIAGNOSTIC_OUTPUT
-D SX126X_DIO2_AS_RF_SWITCH=true
+1 -1
View File
@@ -24,7 +24,7 @@ build_flags = ${nrf52_base.build_flags}
-D UI_RECENT_LIST_SIZE=9
-D UI_MSG_PREVIEW_SIZE=165
-D EINK_MAX_PARTIAL_REFRESH=60
-D AUTO_OFF_MILLIS=1800000
-D AUTO_OFF_MILLIS=900000
-D BACKLIGHT_BTN=PIN_BUTTON2
-D UI_SHOW_CLOCK=1
-D EINK_SCREENOFF_BLANK