aboutsummaryrefslogtreecommitdiffstats
path: root/src/displayapp/DisplayApp.cpp
diff options
context:
space:
mode:
authormark9064 <30447455+mark9064@users.noreply.github.com>2024-04-01 00:21:13 +0100
committerJF <JF002@users.noreply.github.com>2024-08-05 20:32:43 +0200
commit3e8accde6969737183eeb14c4b73761f8932197f (patch)
treef48975ca3defa700b58b856ce94ad9e6d301fc89 /src/displayapp/DisplayApp.cpp
parent2bb611db8e5be5731d848edef351f780c676deae (diff)
aod: run LVGL task handler until all work finished
Diffstat (limited to 'src/displayapp/DisplayApp.cpp')
-rw-r--r--src/displayapp/DisplayApp.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index 88ce085f..bc9a57bc 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -242,7 +242,9 @@ void DisplayApp::Refresh() {
// If not true, then wait that amount of time
queueTimeout = CalculateSleepTime();
if (queueTimeout == 0) {
- lv_task_handler();
+ // Keep running the task handler if it still has things to draw
+ while (!lv_task_handler()) {
+ };
// Drop frames that we've missed if the loop took way longer than expected to execute
while (queueTimeout == 0) {
alwaysOnTickCount += 1;