nx-hbmenu/nx_main/nx_power.c
Daniel Bernard 8b86b36393 Add support to display current charge, and indicate whether or not device is charging (#67)
* Add support to display current charge, and indicate whether or not device is charging.
Updated Makefile.pc to incorporate new icon binaries

* Refactored power-related code, added drawIcon

Added common power interface

* Add battery icon and shift charge text as required
2018-10-09 18:27:43 -04:00

43 lines
901 B
C

#include <switch.h>
#include "../common/common.h"
static bool psmInitialized;
bool powerGetDetails(uint32_t *batteryCharge, bool *isCharging) {
ChargerType charger = ChargerType_None;
bool hwReadsSucceeded = false;
Result rc = 0;
*isCharging = false;
*batteryCharge = 0;
if (psmInitialized)
{
rc = psmGetBatteryChargePercentage(batteryCharge);
hwReadsSucceeded = R_SUCCEEDED(rc);
rc = psmGetChargerType(&charger);
hwReadsSucceeded &= R_SUCCEEDED(rc);
*isCharging = (charger > ChargerType_None);
}
return hwReadsSucceeded;
}
void powerInit(void) {
if (!psmInitialized)
{
Result rc = psmInitialize();
if (R_SUCCEEDED(rc))
{
psmInitialized = true;
}
}
}
void powerExit(void) {
if (psmInitialized)
{
psmExit();
psmInitialized = false;
}
}