Let lvgl control queueTimeout
This commit is contained in:
parent
6c023785e5
commit
e57ff28231
|
@ -141,19 +141,15 @@ uint32_t count = 0;
|
|||
bool toggle = true;
|
||||
void DisplayApp::Refresh() {
|
||||
TickType_t queueTimeout;
|
||||
TickType_t delta;
|
||||
switch (state) {
|
||||
case States::Idle:
|
||||
IdleState();
|
||||
queueTimeout = portMAX_DELAY;
|
||||
break;
|
||||
case States::Running:
|
||||
RunningState();
|
||||
delta = xTaskGetTickCount() - lastWakeTime;
|
||||
if (delta > LV_DISP_DEF_REFR_PERIOD) {
|
||||
delta = LV_DISP_DEF_REFR_PERIOD;
|
||||
if (!currentScreen->IsRunning()) {
|
||||
LoadApp(returnToApp, returnDirection);
|
||||
}
|
||||
queueTimeout = LV_DISP_DEF_REFR_PERIOD - delta;
|
||||
queueTimeout = lv_task_handler();
|
||||
break;
|
||||
default:
|
||||
queueTimeout = portMAX_DELAY;
|
||||
|
@ -161,9 +157,7 @@ void DisplayApp::Refresh() {
|
|||
}
|
||||
|
||||
Messages msg;
|
||||
bool messageReceived = xQueueReceive(msgQueue, &msg, queueTimeout);
|
||||
lastWakeTime = xTaskGetTickCount();
|
||||
if (messageReceived) {
|
||||
if (xQueueReceive(msgQueue, &msg, queueTimeout)) {
|
||||
switch (msg) {
|
||||
case Messages::DimScreen:
|
||||
// Backup brightness is the brightness to return to after dimming or sleeping
|
||||
|
@ -275,13 +269,6 @@ void DisplayApp::Refresh() {
|
|||
}
|
||||
}
|
||||
|
||||
void DisplayApp::RunningState() {
|
||||
if (!currentScreen->IsRunning()) {
|
||||
LoadApp(returnToApp, returnDirection);
|
||||
}
|
||||
lv_task_handler();
|
||||
}
|
||||
|
||||
void DisplayApp::StartApp(Apps app, DisplayApp::FullRefreshDirections direction) {
|
||||
nextApp = app;
|
||||
nextDirection = direction;
|
||||
|
@ -423,9 +410,6 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
|
|||
currentApp = app;
|
||||
}
|
||||
|
||||
void DisplayApp::IdleState() {
|
||||
}
|
||||
|
||||
void DisplayApp::PushMessage(Messages msg) {
|
||||
if (in_isr()) {
|
||||
BaseType_t xHigherPriorityTaskWoken;
|
||||
|
|
|
@ -103,8 +103,6 @@ namespace Pinetime {
|
|||
TouchEvents returnTouchEvent = TouchEvents::None;
|
||||
|
||||
TouchEvents GetGesture();
|
||||
void RunningState();
|
||||
void IdleState();
|
||||
static void Process(void* instance);
|
||||
void InitHw();
|
||||
void Refresh();
|
||||
|
|
Loading…
Reference in a new issue