Skip to content

qp_lvgl: always signal flush ready even with no display#26275

Open
arcaartem wants to merge 1 commit into
qmk:developfrom
arcaartem:fix-qp-lvgl-flush-ready
Open

qp_lvgl: always signal flush ready even with no display#26275
arcaartem wants to merge 1 commit into
qmk:developfrom
arcaartem:fix-qp-lvgl-flush-ready

Conversation

@arcaartem

@arcaartem arcaartem commented Jun 18, 2026

Copy link
Copy Markdown

Description

qp_lvgl_flush() called lv_disp_flush_ready() only inside the
if (selected_display) block. When LVGL invokes the flush callback while
selected_display is NULL, the callback returns without ever signalling
completion, so LVGL keeps the flush marked "in progress" and stalls all
further rendering.

This moves lv_disp_flush_ready() out of the conditional so it is always
called, per LVGL's contract that every flush_cb must signal ready exactly
once.

Types of Changes

  • Core
  • Bugfix
  • New feature
  • Enhancement/optimization
  • Keyboard (addition or update)
  • Keymap/layout/userspace (addition or update)
  • Documentation

Checklist

  • My code follows the code style of this project: https://docs.qmk.fm/#/contributing
  • I have read the PR Checklist document and have made the appropriate changes.
  • My change requires a change to the documentation. (bugfix only — no documented behavior changes)
  • My code needs no new automated tests.

qp_lvgl_flush() called lv_disp_flush_ready() only inside the
`if (selected_display)` block. When LVGL invokes the flush callback while
selected_display is NULL, the callback returns without ever signalling
completion, so LVGL keeps the flush marked "in progress" and stalls all
further rendering.

Move lv_disp_flush_ready() out of the conditional so it is always called,
per LVGL's contract that every flush_cb must signal ready exactly once.
@github-actions github-actions Bot added the core label Jun 18, 2026
@arcaartem arcaartem marked this pull request as ready for review June 20, 2026 14:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant