summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFred Silberberg <fred@silberberg.xyz>2020-09-21 18:39:50 -0700
committerGitHub <noreply@github.com>2020-09-21 18:39:50 -0700
commitc23667608c6ebb8f6d8a7f9b115144abd8794e00 (patch)
tree968d5d5da9b105a2818195934b3dde662630d956
parentdc037f139135e2321a71dda90ecee4535d363f28 (diff)
downloadqmk_firmware-c23667608c6ebb8f6d8a7f9b115144abd8794e00.tar.gz
qmk_firmware-c23667608c6ebb8f6d8a7f9b115144abd8794e00.zip
Add OLED driver function to determine if the screen is currently on (#10382)
-rw-r--r--docs/feature_oled_driver.md4
-rw-r--r--drivers/oled/oled_driver.c2
-rw-r--r--drivers/oled/oled_driver.h4
3 files changed, 10 insertions, 0 deletions
diff --git a/docs/feature_oled_driver.md b/docs/feature_oled_driver.md
index d106d3d13e..9e33a321ce 100644
--- a/docs/feature_oled_driver.md
+++ b/docs/feature_oled_driver.md
@@ -300,6 +300,10 @@ bool oled_on(void);
// Returns true if the screen was off or turns off
bool oled_off(void);
+// Returns true if the oled is currently on, false if it is
+// not
+bool is_oled_on(void);
+
// Basically it's oled_render, but with timeout management and oled_task_user calling!
void oled_task(void);
diff --git a/drivers/oled/oled_driver.c b/drivers/oled/oled_driver.c
index 9ae737ca2d..0e15c3c4b2 100644
--- a/drivers/oled/oled_driver.c
+++ b/drivers/oled/oled_driver.c
@@ -534,6 +534,8 @@ bool oled_off(void) {
return !oled_active;
}
+bool is_oled_on(void) { return oled_active; }
+
// Set the specific 8 lines rows of the screen to scroll.
// 0 is the default for start, and 7 for end, which is the entire
// height of the screen. For 128x32 screens, rows 4-7 are not used.
diff --git a/drivers/oled/oled_driver.h b/drivers/oled/oled_driver.h
index 9a4b98d2fd..58e2bb7386 100644
--- a/drivers/oled/oled_driver.h
+++ b/drivers/oled/oled_driver.h
@@ -257,6 +257,10 @@ bool oled_on(void);
// Returns true if the screen was off or turns off
bool oled_off(void);
+// Returns true if the oled is currently on, false if it is
+// not
+bool is_oled_on(void);
+
// Basically it's oled_render, but with timeout management and oled_task_user calling!
void oled_task(void);