From ed7e0bd9152b21091f1aecad9304445ac24b3471 Mon Sep 17 00:00:00 2001 From: lolocomotive <49951010+lolocomotive@users.noreply.github.com> Date: Fri, 5 Nov 2021 13:46:42 +0100 Subject: [PATCH] Show battery percentage in about menu (#69) --- apps/settings/sub_menu/about_controller.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/apps/settings/sub_menu/about_controller.cpp b/apps/settings/sub_menu/about_controller.cpp index bf798b88b..582447f48 100644 --- a/apps/settings/sub_menu/about_controller.cpp +++ b/apps/settings/sub_menu/about_controller.cpp @@ -100,6 +100,22 @@ bool AboutController::handleEvent(Ion::Events::Event event) { return true; } + if(childLabel == I18n::Message::Battery){ + MessageTableCellWithBuffer * myCell = (MessageTableCellWithBuffer *)m_selectableTableView.selectedCell(); + char batteryLevel[15]; + if(strchr(myCell->accessoryText(), '%') == NULL){ + int batteryLen = Poincare::Integer((int) ((Ion::Battery::voltage() - 3.6) * 166)).serialize(batteryLevel, 15); + batteryLevel[batteryLen] = '%'; + batteryLevel[batteryLen+1] = '\0'; + }else{ + int batteryLen = Poincare::Number::FloatNumber(Ion::Battery::voltage()).serialize(batteryLevel, 15, Poincare::Preferences::PrintFloatMode::Decimal, 3); + batteryLevel[batteryLen] = 'V'; + batteryLevel[batteryLen+1] = '\0'; + } + + myCell->setAccessoryText(batteryLevel); + return true; + } } return false; }