diff options
Diffstat (limited to 'src/displayapp/DisplayApp.cpp')
-rw-r--r-- | src/displayapp/DisplayApp.cpp | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp index 3174a658..aa2c037e 100644 --- a/src/displayapp/DisplayApp.cpp +++ b/src/displayapp/DisplayApp.cpp @@ -75,7 +75,8 @@ DisplayApp::DisplayApp(Drivers::St7789& lcd, Pinetime::Controllers::TimerController& timerController, Pinetime::Controllers::AlarmController& alarmController, Pinetime::Controllers::BrightnessController& brightnessController, - Pinetime::Controllers::TouchHandler& touchHandler) + Pinetime::Controllers::TouchHandler& touchHandler, + Pinetime::Controllers::FS& filesystem) : lcd {lcd}, lvgl {lvgl}, touchPanel {touchPanel}, @@ -91,7 +92,8 @@ DisplayApp::DisplayApp(Drivers::St7789& lcd, timerController {timerController}, alarmController {alarmController}, brightnessController {brightnessController}, - touchHandler {touchHandler} { + touchHandler {touchHandler}, + filesystem {filesystem} { } void DisplayApp::Start(System::BootErrors error) { @@ -130,7 +132,6 @@ void DisplayApp::InitHw() { void DisplayApp::Refresh() { auto LoadPreviousScreen = [this]() { - brightnessController.Set(settingsController.GetBrightness()); LoadApp(returnToApp, returnDirection); }; @@ -184,7 +185,7 @@ void DisplayApp::Refresh() { case Messages::TimerDone: if (currentApp == Apps::Timer) { auto* timer = static_cast<Screens::Timer*>(currentScreen.get()); - timer->SetDone(); + timer->Reset(); } else { LoadApp(Apps::Timer, DisplayApp::FullRefreshDirections::Down); } @@ -302,6 +303,8 @@ void DisplayApp::ReturnApp(Apps app, DisplayApp::FullRefreshDirections direction void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction) { touchHandler.CancelTap(); + brightnessController.Set(settingsController.GetBrightness()); + currentScreen.reset(nullptr); SetFullRefresh(direction); @@ -310,7 +313,8 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction) switch (app) { case Apps::Launcher: - currentScreen = std::make_unique<Screens::ApplicationList>(this, settingsController, batteryController, dateTimeController); + currentScreen = + std::make_unique<Screens::ApplicationList>(this, settingsController, batteryController, bleController, dateTimeController); ReturnApp(Apps::Clock, FullRefreshDirections::Down, TouchEvents::SwipeDown); break; case Apps::None: @@ -322,7 +326,8 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction) notificationManager, settingsController, heartRateController, - motionController); + motionController, + filesystem); break; case Apps::Error: @@ -366,7 +371,7 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction) currentScreen = std::make_unique<Screens::Timer>(this, timerController); break; case Apps::Alarm: - currentScreen = std::make_unique<Screens::Alarm>(this, alarmController, settingsController, *systemTask); + currentScreen = std::make_unique<Screens::Alarm>(this, alarmController, settingsController.GetClockType(), *systemTask); break; // Settings @@ -376,7 +381,8 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction) dateTimeController, brightnessController, motorController, - settingsController); + settingsController, + bleController); ReturnApp(Apps::Clock, FullRefreshDirections::LeftAnim, TouchEvents::SwipeLeft); break; case Apps::Settings: |