diff --git a/src/Display.cpp b/src/Display.cpp index ecaac83..a2ed2e2 100644 --- a/src/Display.cpp +++ b/src/Display.cpp @@ -50,15 +50,35 @@ void WatchyDisplay::asyncPowerOn() { } } -void WatchyDisplay::setDarkBorder(bool dark) { +void WatchyDisplay::drawDarkBorder(bool dark) { if (_hibernating) return; - darkBorder = dark; + //This line overrides the intended behaviour that I want for the + //darkBorder variable. I want to set the darkBorder variable to dark + //and then paint the border always dark, not always putting the opposite + //colour of the background, like it is done here. + //darkBorder = dark; _startTransfer(); _transferCommand(0x3C); // BorderWavefrom _transfer(dark ? 0x02 : 0x05); _endTransfer(); } +/* + This is a setter for the darkBorder variable. It sets the darkBorder. +*/ +void WatchyDisplay::setDarkBorder(bool dark) { + if (_hibernating) return; + darkBorder = dark; + drawDarkBorder(dark); +} + +/* + This is a getter for the darkBorder variable. It returns the darkBorder. +*/ +bool WatchyDisplay::isDarkBorder() { + return darkBorder; +} + void WatchyDisplay::clearScreen(uint8_t value) { writeScreenBuffer(value); diff --git a/src/Display.h b/src/Display.h index dcb7248..5549f01 100644 --- a/src/Display.h +++ b/src/Display.h @@ -38,7 +38,9 @@ class WatchyDisplay : public GxEPD2_EPD // constructor WatchyDisplay(); void initWatchy(); + void drawDarkBorder(bool darkBorder); void setDarkBorder(bool darkBorder); + bool isDarkBorder(); void asyncPowerOn(); void _PowerOnAsync(); bool waitingPowerOn = false; @@ -76,7 +78,7 @@ class WatchyDisplay : public GxEPD2_EPD void powerOff(); // turns off generation of panel driving voltages, avoids screen fading over time void hibernate(); // turns powerOff() and sets controller to deep sleep for minimum power use, ONLY if wakeable by RST (rst >= 0) - bool darkBorder = false; // adds a dark border outside the normal screen area + bool darkBorder = true; // adds a dark border outside the normal screen area static constexpr bool reduceBoosterTime = true; // Saves ~200ms private: