diff options
Diffstat (limited to 'keyboards/crkbd/keymaps/gotham/oled.c')
-rw-r--r-- | keyboards/crkbd/keymaps/gotham/oled.c | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/keyboards/crkbd/keymaps/gotham/oled.c b/keyboards/crkbd/keymaps/gotham/oled.c index baacc86b18..6bf1233659 100644 --- a/keyboards/crkbd/keymaps/gotham/oled.c +++ b/keyboards/crkbd/keymaps/gotham/oled.c @@ -144,6 +144,7 @@ void render_feature_status(void) { // Keylogger #define KEYLOGGER_LENGTH 5 static uint16_t oled_timer = 0; +static bool is_key_processed = true; static char keylog_str[KEYLOGGER_LENGTH + 1] = {"\n"}; // clang-format off static const char PROGMEM code_to_name[0xFF] = { @@ -247,18 +248,13 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) { } bool oled_task_user(void) { - if (timer_elapsed(oled_timer) > 10000) { - oled_off(); - return; - } - #ifndef SPLIT_KEYBOARD - else { - oled_on(); - } - #endif - if (is_keyboard_master()) { - render_status_main(); + if (is_key_processed && (timer_elapsed(oled_timer) < OLED_KEY_TIMEOUT)) { + render_status_main(); + } else { + is_key_processed = false; + oled_off(); + } } else { render_status_secondary(); } |