summaryrefslogtreecommitdiff
path: root/src/displayapp/DisplayApp.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/displayapp/DisplayApp.cpp')
-rw-r--r--src/displayapp/DisplayApp.cpp101
1 files changed, 36 insertions, 65 deletions
diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index 904b461..db9d253 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -105,9 +105,9 @@ void DisplayApp::Start(System::BootErrors error) {
bootError = error;
if (error == System::BootErrors::TouchController) {
- LoadApp(Apps::Error, DisplayApp::FullRefreshDirections::None);
+ LoadApp(Apps::Error);
} else {
- LoadApp(Apps::Clock, DisplayApp::FullRefreshDirections::None);
+ LoadApp(Apps::Clock);
}
if (pdPASS != xTaskCreate(DisplayApp::Process, "displayapp", 800, this, 0, &taskHandle)) {
@@ -141,7 +141,7 @@ void DisplayApp::Refresh() {
break;
case States::Running:
if (!currentScreen->IsRunning()) {
- LoadApp(returnToApp, returnDirection);
+ LoadApp(returnToApp);
}
queueTimeout = lv_task_handler();
break;
@@ -183,14 +183,14 @@ void DisplayApp::Refresh() {
// Screens::Clock::BleConnectionStates::NotConnected);
break;
case Messages::NewNotification:
- LoadApp(Apps::NotificationsPreview, DisplayApp::FullRefreshDirections::Down);
+ LoadApp(Apps::NotificationsPreview);
break;
case Messages::AlarmTriggered:
if (currentApp == Apps::Alarm) {
auto* alarm = static_cast<Screens::Alarm*>(currentScreen.get());
alarm->SetAlerting();
} else {
- LoadApp(Apps::Alarm, DisplayApp::FullRefreshDirections::None);
+ LoadApp(Apps::Alarm);
}
break;
case Messages::TouchEvent: {
@@ -205,13 +205,13 @@ void DisplayApp::Refresh() {
if (currentApp == Apps::Clock) {
switch (gesture) {
case TouchEvents::SwipeUp:
- LoadApp(Apps::Launcher, DisplayApp::FullRefreshDirections::Up);
+ LoadApp(Apps::Launcher);
break;
case TouchEvents::SwipeDown:
- LoadApp(Apps::Notifications, DisplayApp::FullRefreshDirections::Down);
+ LoadApp(Apps::Notifications);
break;
case TouchEvents::SwipeRight:
- LoadApp(Apps::QuickSettings, DisplayApp::FullRefreshDirections::RightAnim);
+ LoadApp(Apps::QuickSettings);
break;
case TouchEvents::DoubleTap:
PushMessageToSystemTask(System::Messages::GoToSleep);
@@ -219,8 +219,8 @@ void DisplayApp::Refresh() {
default:
break;
}
- } else if (returnTouchEvent == gesture) {
- LoadApp(returnToApp, returnDirection);
+ } else {
+ LoadApp(returnToApp);
brightnessController.Set(settingsController.GetBrightness());
brightnessController.Backup();
}
@@ -233,7 +233,7 @@ void DisplayApp::Refresh() {
if (currentApp == Apps::Clock) {
PushMessageToSystemTask(System::Messages::GoToSleep);
} else {
- LoadApp(returnToApp, returnDirection);
+ LoadApp(returnToApp);
brightnessController.Set(settingsController.GetBrightness());
brightnessController.Backup();
}
@@ -242,39 +242,39 @@ void DisplayApp::Refresh() {
case Messages::ButtonLongPressed:
if (currentApp != Apps::Clock) {
if (currentApp == Apps::Notifications) {
- LoadApp(Apps::Clock, DisplayApp::FullRefreshDirections::Up);
+ LoadApp(Apps::Clock);
} else if (currentApp == Apps::QuickSettings) {
- LoadApp(Apps::Clock, DisplayApp::FullRefreshDirections::LeftAnim);
+ LoadApp(Apps::Clock);
} else {
- LoadApp(Apps::Clock, DisplayApp::FullRefreshDirections::Down);
+ LoadApp(Apps::Clock);
}
}
break;
case Messages::ButtonLongerPressed:
// Open up Firmware window, before possible reboot if press continues
- LoadApp(Apps::FirmwareValidation, DisplayApp::FullRefreshDirections::Up);
+ LoadApp(Apps::FirmwareValidation);
break;
case Messages::ButtonDoubleClicked:
if (currentApp != Apps::Notifications && currentApp != Apps::NotificationsPreview) {
- LoadApp(Apps::Notifications, DisplayApp::FullRefreshDirections::Down);
+ LoadApp(Apps::Notifications);
}
break;
case Messages::BleFirmwareUpdateStarted:
- LoadApp(Apps::FirmwareUpdate, DisplayApp::FullRefreshDirections::Down);
+ LoadApp(Apps::FirmwareUpdate);
break;
case Messages::UpdateDateTime:
// Added to remove warning
// What should happen here?
break;
case Messages::Clock:
- LoadApp(Apps::Clock, DisplayApp::FullRefreshDirections::None);
+ LoadApp(Apps::Clock);
break;
}
}
if (nextApp != Apps::None) {
- LoadApp(nextApp, nextDirection);
+ LoadApp(nextApp);
nextApp = Apps::None;
}
@@ -283,29 +283,25 @@ void DisplayApp::Refresh() {
}
}
-void DisplayApp::StartApp(Apps app, DisplayApp::FullRefreshDirections direction) {
+void DisplayApp::StartApp(Apps app) {
nextApp = app;
- nextDirection = direction;
}
-void DisplayApp::ReturnApp(Apps app, DisplayApp::FullRefreshDirections direction, TouchEvents touchEvent) {
+void DisplayApp::ReturnApp(Apps app) {
returnToApp = app;
- returnDirection = direction;
- returnTouchEvent = touchEvent;
}
-void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction) {
+void DisplayApp::LoadApp(Apps app) {
touchHandler.CancelTap();
currentScreen.reset(nullptr);
- SetFullRefresh(direction);
// default return to launcher
- ReturnApp(Apps::Launcher, FullRefreshDirections::Down, TouchEvents::SwipeDown);
+ ReturnApp(Apps::Launcher);
switch (app) {
case Apps::Launcher:
currentScreen = std::make_unique<Screens::ApplicationList>(this, settingsController, batteryController, dateTimeController);
- ReturnApp(Apps::Clock, FullRefreshDirections::Down, TouchEvents::SwipeDown);
+ ReturnApp(Apps::Clock);
break;
case Apps::None:
case Apps::Clock:
@@ -321,26 +317,26 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
case Apps::Error:
currentScreen = std::make_unique<Screens::Error>(this, bootError);
- ReturnApp(Apps::Clock, FullRefreshDirections::Down, TouchEvents::None);
+ ReturnApp(Apps::Clock);
break;
case Apps::FirmwareValidation:
currentScreen = std::make_unique<Screens::FirmwareValidation>(this, validator);
- ReturnApp(Apps::Settings, FullRefreshDirections::Down, TouchEvents::SwipeDown);
+ ReturnApp(Apps::Settings);
break;
case Apps::FirmwareUpdate:
currentScreen = std::make_unique<Screens::FirmwareUpdate>(this, bleController);
- ReturnApp(Apps::Clock, FullRefreshDirections::Down, TouchEvents::None);
+ ReturnApp(Apps::Clock);
break;
case Apps::Notifications:
currentScreen = std::make_unique<Screens::Notifications>(
this, notificationManager, systemTask->nimble().alertService(), motorController, *systemTask, Screens::Notifications::Modes::Normal);
- ReturnApp(Apps::Clock, FullRefreshDirections::Up, TouchEvents::SwipeUp);
+ ReturnApp(Apps::Clock);
break;
case Apps::NotificationsPreview:
currentScreen = std::make_unique<Screens::Notifications>(
this, notificationManager, systemTask->nimble().alertService(), motorController, *systemTask, Screens::Notifications::Modes::Preview);
- ReturnApp(Apps::Clock, FullRefreshDirections::Up, TouchEvents::SwipeUp);
+ ReturnApp(Apps::Clock);
break;
case Apps::Alarm:
currentScreen = std::make_unique<Screens::Alarm>(this, alarmController, settingsController, *systemTask);
@@ -350,31 +346,31 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
case Apps::QuickSettings:
currentScreen = std::make_unique<Screens::QuickSettings>(
this, batteryController, dateTimeController, brightnessController, motorController, settingsController);
- ReturnApp(Apps::Clock, FullRefreshDirections::LeftAnim, TouchEvents::SwipeLeft);
+ ReturnApp(Apps::Clock);
break;
case Apps::Settings:
currentScreen = std::make_unique<Screens::Settings>(this, settingsController);
- ReturnApp(Apps::QuickSettings, FullRefreshDirections::Down, TouchEvents::SwipeDown);
+ ReturnApp(Apps::QuickSettings);
break;
case Apps::SettingTimeFormat:
currentScreen = std::make_unique<Screens::SettingTimeFormat>(this, settingsController);
- ReturnApp(Apps::Settings, FullRefreshDirections::Down, TouchEvents::SwipeDown);
+ ReturnApp(Apps::Settings);
break;
case Apps::SettingWakeUp:
currentScreen = std::make_unique<Screens::SettingWakeUp>(this, settingsController);
- ReturnApp(Apps::Settings, FullRefreshDirections::Down, TouchEvents::SwipeDown);
+ ReturnApp(Apps::Settings);
break;
case Apps::SettingDisplay:
currentScreen = std::make_unique<Screens::SettingDisplay>(this, settingsController);
- ReturnApp(Apps::Settings, FullRefreshDirections::Down, TouchEvents::SwipeDown);
+ ReturnApp(Apps::Settings);
break;
case Apps::SettingSteps:
currentScreen = std::make_unique<Screens::SettingSteps>(this, settingsController);
- ReturnApp(Apps::Settings, FullRefreshDirections::Down, TouchEvents::SwipeDown);
+ ReturnApp(Apps::Settings);
break;
case Apps::SettingShakeThreshold:
currentScreen = std::make_unique<Screens::SettingShakeThreshold>(this, settingsController, motionController, *systemTask);
- ReturnApp(Apps::Settings, FullRefreshDirections::Down, TouchEvents::SwipeDown);
+ ReturnApp(Apps::Settings);
break;
case Apps::HeartRate:
currentScreen = std::make_unique<Screens::HeartRate>(this, heartRateController, *systemTask);
@@ -402,31 +398,6 @@ void DisplayApp::PushMessage(Messages msg) {
}
}
-void DisplayApp::SetFullRefresh(DisplayApp::FullRefreshDirections direction) {
- switch (direction) {
- case DisplayApp::FullRefreshDirections::Down:
- lvgl.SetFullRefresh(Components::LittleVgl::FullRefreshDirections::Down);
- break;
- case DisplayApp::FullRefreshDirections::Up:
- lvgl.SetFullRefresh(Components::LittleVgl::FullRefreshDirections::Up);
- break;
- case DisplayApp::FullRefreshDirections::Left:
- lvgl.SetFullRefresh(Components::LittleVgl::FullRefreshDirections::Left);
- break;
- case DisplayApp::FullRefreshDirections::Right:
- lvgl.SetFullRefresh(Components::LittleVgl::FullRefreshDirections::Right);
- break;
- case DisplayApp::FullRefreshDirections::LeftAnim:
- lvgl.SetFullRefresh(Components::LittleVgl::FullRefreshDirections::LeftAnim);
- break;
- case DisplayApp::FullRefreshDirections::RightAnim:
- lvgl.SetFullRefresh(Components::LittleVgl::FullRefreshDirections::RightAnim);
- break;
- default:
- break;
- }
-}
-
void DisplayApp::PushMessageToSystemTask(Pinetime::System::Messages message) {
if (systemTask != nullptr) {
systemTask->PushMessage(message);