diff options
Diffstat (limited to 'src/displayapp')
-rw-r--r-- | src/displayapp/DisplayApp.cpp | 2 | ||||
-rw-r--r-- | src/displayapp/screens/BatteryInfo.cpp | 15 |
2 files changed, 11 insertions, 6 deletions
diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp index 773ae9c0..36f93a91 100644 --- a/src/displayapp/DisplayApp.cpp +++ b/src/displayapp/DisplayApp.cpp @@ -132,7 +132,7 @@ void DisplayApp::Refresh() { // clockScreen.SetBleConnectionState(bleController.IsConnected() ? Screens::Clock::BleConnectionStates::Connected : Screens::Clock::BleConnectionStates::NotConnected); break; case Messages::UpdateBatteryLevel: -// clockScreen.SetBatteryPercentRemaining(batteryController.PercentRemaining()); + batteryController.Update(); break; case Messages::NewNotification: LoadApp( Apps::NotificationsPreview, DisplayApp::FullRefreshDirections::Down ); diff --git a/src/displayapp/screens/BatteryInfo.cpp b/src/displayapp/screens/BatteryInfo.cpp index ae39138f..e616d67f 100644 --- a/src/displayapp/screens/BatteryInfo.cpp +++ b/src/displayapp/screens/BatteryInfo.cpp @@ -84,7 +84,7 @@ void BatteryInfo::UpdateAnim() { batteryPercent = batteryController.PercentRemaining(); if ( batteryPercent >= 0 ) { - if ( batteryController.IsCharging() ) { + if ( batteryController.IsCharging() and batteryPercent < 100 ) { animation +=1; if (animation >= 100) { animation = 0; @@ -111,12 +111,17 @@ void BatteryInfo::UpdateScreen() { batteryVoltage = batteryController.Voltage(); if ( batteryPercent >= 0 ) { - if ( batteryController.IsCharging() ) { - lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC , LV_STATE_DEFAULT, lv_color_hex(0xFF0000)); + if ( batteryController.IsCharging() and batteryPercent < 100 ) { + lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC , LV_STATE_DEFAULT, LV_COLOR_RED); lv_label_set_text_static(status,"Battery charging"); - + } else if ( batteryPercent == 100 ) { + lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC , LV_STATE_DEFAULT, LV_COLOR_BLUE); + lv_label_set_text_static(status,"Battery is fully charged"); + } else if ( batteryPercent < 10 ) { + lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC , LV_STATE_DEFAULT, LV_COLOR_YELLOW); + lv_label_set_text_static(status,"Battery is low"); } else { - lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC , LV_STATE_DEFAULT, lv_color_hex(0x00FF00)); + lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC , LV_STATE_DEFAULT, LV_COLOR_GREEN); lv_label_set_text_static(status,"Battery discharging"); } |