summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJF <jf@codingfield.com>2020-03-11 21:35:06 +0100
committerJF <jf@codingfield.com>2020-03-11 21:35:06 +0100
commita91c68c931cc8308e87acd796afb46ba70ae3dc2 (patch)
tree505f15350e19c44eca19e252ca5b999f959164df /src
parentb279c994887342197cc5940f1735a074d7e58f1b (diff)
Backup and restore vertical scroll offset when goind to sleep/wakeup to avoid scrambled display on wake-up.
Diffstat (limited to 'src')
-rw-r--r--src/DisplayApp/DisplayApp.cpp12
-rw-r--r--src/drivers/St7789.cpp2
-rw-r--r--src/drivers/St7789.h1
-rw-r--r--src/sdk_config.h6
4 files changed, 12 insertions, 9 deletions
diff --git a/src/DisplayApp/DisplayApp.cpp b/src/DisplayApp/DisplayApp.cpp
index 3cb245f8..7464175e 100644
--- a/src/DisplayApp/DisplayApp.cpp
+++ b/src/DisplayApp/DisplayApp.cpp
@@ -132,13 +132,13 @@ void DisplayApp::Refresh() {
break;
case Messages::ButtonPushed:
if(onClockApp)
- systemTask.PushMessage(System::SystemTask::Messages::GoToSleep);
- else {
- auto buttonUsedByApp = currentScreen->OnButtonPushed();
- if (!buttonUsedByApp) {
systemTask.PushMessage(System::SystemTask::Messages::GoToSleep);
- } else {
- lvgl.SetFullRefresh(Components::LittleVgl::FullRefreshDirections::Up);
+ else {
+ auto buttonUsedByApp = currentScreen->OnButtonPushed();
+ if (!buttonUsedByApp) {
+ systemTask.PushMessage(System::SystemTask::Messages::GoToSleep);
+ } else {
+ lvgl.SetFullRefresh(Components::LittleVgl::FullRefreshDirections::Up);
}
}
diff --git a/src/drivers/St7789.cpp b/src/drivers/St7789.cpp
index 1f6e6d36..db7c27e2 100644
--- a/src/drivers/St7789.cpp
+++ b/src/drivers/St7789.cpp
@@ -131,6 +131,7 @@ void St7789::VerticalScrollDefinition(uint16_t topFixedLines, uint16_t scrollLin
}
void St7789::VerticalScrollStartAddress(uint16_t line) {
+ verticalScrollingStartAddress = line;
WriteCommand(static_cast<uint8_t>(Commands::VerticalScrollStartAddress));
WriteData(line >> 8u);
WriteData(line & 0x00ffu);
@@ -189,5 +190,6 @@ void St7789::Wakeup() {
RowAddressSet();
DisplayInversionOn();
NormalModeOn();
+ VerticalScrollStartAddress(verticalScrollingStartAddress);
DisplayOn();
}
diff --git a/src/drivers/St7789.h b/src/drivers/St7789.h
index fb57f283..3721b184 100644
--- a/src/drivers/St7789.h
+++ b/src/drivers/St7789.h
@@ -31,6 +31,7 @@ namespace Pinetime {
private:
SpiMaster& spi;
uint8_t pinDataCommand;
+ uint8_t verticalScrollingStartAddress = 0;
void HardwareReset();
void SoftwareReset();
diff --git a/src/sdk_config.h b/src/sdk_config.h
index d1570718..0d9b2744 100644
--- a/src/sdk_config.h
+++ b/src/sdk_config.h
@@ -8452,15 +8452,15 @@
// <e> NRF_LOG_ENABLED - nrf_log - Logger
//==========================================================
#ifndef NRF_LOG_ENABLED
-#define NRF_LOG_ENABLED 1
+#define NRF_LOG_ENABLED 0
#endif
#ifndef NRF_LOG_BACKEND_RTT_ENABLED
-#define NRF_LOG_BACKEND_RTT_ENABLED 1
+#define NRF_LOG_BACKEND_RTT_ENABLED 0
#endif
#ifndef NRF_LOG_BACKEND_SERIAL_USES_RTT
-#define NRF_LOG_BACKEND_SERIAL_USES_RTT 1
+#define NRF_LOG_BACKEND_SERIAL_USES_RTT 0
#endif
// <h> Log message pool - Configuration of log message pool