qmk/qmk_firmware

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

Open

#20,458 创建于 2023年4月15日

在 GitHub 查看
 (1 评论) (0 反应) (0 负责人)C (43,867 fork)batch import
bughelp wanted

仓库指标

Star
 (20,368 star)
PR 合并指标
 (平均合并 20天 9小时) (30 天内合并 27 个 PR)

描述

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

贡献者指南