diff --git a/apps/on_boarding/logo_controller.cpp b/apps/on_boarding/logo_controller.cpp index 3068da16c..356fc17c5 100644 --- a/apps/on_boarding/logo_controller.cpp +++ b/apps/on_boarding/logo_controller.cpp @@ -1,11 +1,14 @@ #include "logo_controller.h" +#include +#include namespace OnBoarding { LogoController::LogoController() : ViewController(nullptr), Timer(10), - m_logoView() + m_logoView(), + m_previousLEDColor(KDColorBlack) { } @@ -18,4 +21,15 @@ bool LogoController::fire() { return true; } +void LogoController::viewWillAppear() { + ViewController::viewWillAppear(); + m_previousLEDColor = Ion::LED::getColor(); + Ion::LED::setColor(Ion::Battery::level() == Ion::Battery::Charge::FULL ? KDColorGreen : KDColorRed); +} + +void LogoController::viewDidDisappear() { + Ion::LED::setColor(m_previousLEDColor); + ViewController::viewDidDisappear(); +} + } diff --git a/apps/on_boarding/logo_controller.h b/apps/on_boarding/logo_controller.h index 8fdc82de2..72196e581 100644 --- a/apps/on_boarding/logo_controller.h +++ b/apps/on_boarding/logo_controller.h @@ -10,9 +10,12 @@ class LogoController : public ViewController, public Timer { public: LogoController(); View * view() override; + void viewWillAppear() override; + void viewDidDisappear() override; private: bool fire() override; LogoView m_logoView; + KDColor m_previousLEDColor; }; }