#include "../../SDL_internal.h"
#ifndef SDL_POWER_DISABLED
#if SDL_POWER_EMSCRIPTEN
#include <emscripten/html5.h>
#include "SDL_power.h"
SDL_bool
SDL_GetPowerInfo_Emscripten(SDL_PowerState *state, int *seconds, int *percent)
{
EmscriptenBatteryEvent batteryState;
int haveBattery = 0;
if (emscripten_get_battery_status(&batteryState) == EMSCRIPTEN_RESULT_NOT_SUPPORTED)
return SDL_FALSE;
haveBattery = batteryState.level != 1.0 || !batteryState.charging || batteryState.chargingTime != 0.0;
if (!haveBattery) {
*state = SDL_POWERSTATE_NO_BATTERY;
*seconds = -1;
*percent = -1;
return SDL_TRUE;
}
if (batteryState.charging)
*state = batteryState.chargingTime == 0.0 ? SDL_POWERSTATE_CHARGED : SDL_POWERSTATE_CHARGING;
else
*state = SDL_POWERSTATE_ON_BATTERY;
*seconds = batteryState.dischargingTime;
*percent = batteryState.level * 100;
return SDL_TRUE;
}
#endif
#endif