qmk/qmk_firmware

[Bug] Oled scrolling won't resume after oled_timeout.

Open

#20.458 geöffnet am 15. Apr. 2023

Auf GitHub ansehen
 (1 Kommentar) (0 Reaktionen) (0 zugewiesene Personen)C (43.867 Forks)batch import
bughelp wanted

Repository-Metriken

Stars
 (20.368 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 20T 9h) (27 gemergte PRs in 30 T)

Beschreibung

Describe the Bug

A scrolling oled screen enabled with oled_scroll_left()/oled_scroll_right() won't resume scrolling after OLED_TIMEOUT.

Keyboard Used

draculad

Link to product page (if applicable)

No response

Operating System

No response

qmk doctor Output

No response

Is AutoHotKey / Karabiner installed

  • AutoHotKey (Windows)
  • Karabiner (macOS)

Other keyboard-related software installed

No response

Additional Context

I took a look into drivers/oled/ssd1306_sh1106.c and the problem seems to be oled_off() does stop the oleds but keeps the oled_scrolling variable to true and due to that, posterior calls to oled_scroll_right() and oled_scroll_left() do nothing.

I fixed it in a naive way ignoring the oled_scrolling check: https://pastebin.com/raw/Z91cjUTma

Contributor Guide