M module-apps/Application.cpp => module-apps/Application.cpp +2 -2
@@ 126,7 126,7 @@ namespace app
if (state == State::ACTIVE_FORGROUND) {
auto window = getCurrentWindow();
if (Store::Battery::get().state == Store::Battery::State::Charging) {
- window->batteryChargingChange(true);
+ window->updateBatteryCharger(true);
}
else {
window->updateBatteryLevel(Store::Battery::get().level);
@@ 315,7 315,7 @@ namespace app
else {
LOG_INFO("Charger disconnected");
}
- getCurrentWindow()->batteryChargingChange(msg->plugged);
+ getCurrentWindow()->updateBatteryCharger(msg->plugged);
refreshWindow(gui::RefreshModes::GUI_REFRESH_FAST);
return msgHandled();
}
M module-apps/windows/AppWindow.cpp => module-apps/windows/AppWindow.cpp +5 -5
@@ 55,15 55,15 @@ namespace gui
topBar->setActive(TopBar::Elements::SIGNAL, false);
}
- bool AppWindow::batteryChargingChange(bool charging)
+ bool AppWindow::setSIM()
{
- topBar->setBatteryChargingChange(charging);
+ topBar->simSet();
return true;
}
- bool AppWindow::setSIM()
+ bool AppWindow::updateBatteryCharger(bool charging)
{
- topBar->simSet();
+ topBar->updateBattery(charging);
return true;
}
@@ 73,7 73,7 @@ namespace gui
// get old value of battery level, calcualte new level and comapre both
// if they are different make a change and return true, otherwise return false;
if (topBar != nullptr) {
- return topBar->setBatteryBars(percentage);
+ return topBar->updateBattery(percentage);
}
return false;
}
M module-apps/windows/AppWindow.hpp => module-apps/windows/AppWindow.hpp +1 -1
@@ 60,7 60,7 @@ namespace gui
};
virtual bool onDatabaseMessage(sys::Message *msg);
- bool batteryChargingChange(bool charging);
+ bool updateBatteryCharger(bool charging);
bool setSIM();
// updates battery level in the window
bool updateBatteryLevel(uint32_t percentage);
M module-gui/gui/widgets/TopBar.cpp => module-gui/gui/widgets/TopBar.cpp +27 -42
@@ 123,20 123,7 @@ namespace gui
switch (element) {
case Elements::BATTERY: {
elements.battery = active;
- if (Store::Battery::get().state == Store::Battery::State::Discharging) {
- setBatteryBars(active ? Store::Battery::get().level : 0);
- }
- else {
- // plugged
- if (active) {
- setBatteryChargingChange(true);
- }
- else {
- for (auto &el : batteryChargings) {
- el.second->setVisible(false);
- }
- }
- }
+ showBattery(elements.battery);
} break;
case Elements::LOCK: {
elements.lock = active;
@@ 188,42 175,40 @@ namespace gui
return level;
}
- bool TopBar::setBatteryBars(uint32_t percent)
+ bool TopBar::updateBattery(uint32_t percent)
{
- if (Store::Battery::get().state != Store::Battery::State::Discharging) {
+ showBattery(elements.battery);
+ return true;
+ }
- return false;
- }
- for (auto &el : batteryChargings) {
- el.second->setVisible(false);
- }
- batteryShowBars(calculateBatteryBars(percent));
+ bool TopBar::updateBattery(bool plugged)
+ {
+ showBattery(elements.battery);
return true;
}
- void TopBar::setBatteryChargingChange(bool plugged)
+ void TopBar::showBattery(bool shown)
{
- switch (Store::Battery::get().state) {
+ // hide battery bars icons
+ for (const auto &bars : batteryBars) {
+ bars->setVisible(false);
+ }
+ // hide battery charging icons
+ for (const auto &charging : batteryChargings) {
+ charging.second->setVisible(false);
+ }
- case Store::Battery::State::Discharging:
- setBatteryBars(Store::Battery::get().level);
- break;
- case Store::Battery::State::Charging:
- break;
- case Store::Battery::State::PluggedNotCharging:
- break;
+ if (shown) {
+ switch (Store::Battery::get().state) {
+ case Store::Battery::State::Discharging:
+ batteryShowBars(calculateBatteryBars(Store::Battery::get().level));
+ break;
+ case Store::Battery::State::Charging:
+ case Store::Battery::State::PluggedNotCharging:
+ batteryChargings[Store::Battery::get().state]->setVisible(true);
+ break;
+ }
}
- if (plugged) {}
- // if (battery == nullptr)
- // return;
- // if (plugged) {
- // chargingPending->setVisible(true);
- // batteryShowBars(0);
- // }
- // else {
- // chargingPending->setVisible(false);
- //
- // }
}
bool TopBar::updateSignalStrength()
M module-gui/gui/widgets/TopBar.hpp => module-gui/gui/widgets/TopBar.hpp +4 -4
@@ 56,7 56,7 @@ namespace gui
Label *networkAccessTechnologyLabel = nullptr;
Image *signal[static_cast<size_t>(Store::RssiBar::noOfSupprtedBars)];
Image *lock;
- std::array<Image *, batteryBarsCount> batteryBars = {nullptr};
+ std::array<Image *, batteryBarsCount> batteryBars = {nullptr};
std::map<const Store::Battery::State, Image *> batteryChargings = {
{Store::Battery::State::Charging, nullptr}, {Store::Battery::State::PluggedNotCharging, nullptr}};
gui::SIM *sim = nullptr;
@@ 91,9 91,9 @@ namespace gui
* displayed.
* @return if display should be refreshed or not
*/
- bool setBatteryBars(uint32_t percent);
-
- void setBatteryChargingChange(bool plugged);
+ bool updateBattery(uint32_t percent);
+ bool updateBattery(bool plugged);
+ void showBattery(bool shown);
/**
* @brief updates signal strength. This will cause appropriate image to be displayed.