mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-03-18 21:30:38 +01:00
[apps/on_boarding] Light up the LED to indicate battery level
This commit is contained in:
@@ -1,11 +1,14 @@
|
||||
#include "logo_controller.h"
|
||||
#include <ion/led.h>
|
||||
#include <ion/battery.h>
|
||||
|
||||
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();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user