{
ret = power_lock_state(POWER_STATE_SCREEN_OFF, 0);
SysTryReturnVoidResult(NID_SYS, ret == 0, E_SYSTEM, "[E_SYSTEM] It failed to lock the power state");
- }
+ }
}
}
_ActiveEventListener* pActiveEventListener = null;
void
-DeviceBatteryWarnCallback(device_battery_warn_e status, void* userData)
+BatteryLevelVConfCallback(keynode_t* node, void* userData)
{
- SysLog(NID_SYS, "Battery Warn Level is called %d", status);
+ SysLog(NID_SYS, "Battery Warn Level is changed");
BatteryLevel batteryLevel;
- switch(status)
- {
- case DEVICE_BATTERY_WARN_EMPTY:
- {
- batteryLevel = BATTERY_EMPTY;
- break;
- }
- case DEVICE_BATTERY_WARN_CRITICAL:
- {
- batteryLevel = BATTERY_CRITICAL;
- break;
- }
- case DEVICE_BATTERY_WARN_LOW:
- {
- batteryLevel = BATTERY_LOW;
- break;
- }
- case DEVICE_BATTERY_WARN_NORMAL:
- {
- batteryLevel = BATTERY_HIGH;
- break;
- }
- case DEVICE_BATTERY_WARN_FULL:
- {
- batteryLevel = BATTERY_FULL;
- break;
- }
- default:
- return;
- }
- _AppImpl* pAppImpl = _AppImpl::GetInstance();
- if(pAppImpl != null)
+ if (strcmp(VCONFKEY_SYSMAN_BATTERY_LEVEL_STATUS, vconf_keynode_get_name(node)) == 0)
{
- SysLog(NID_SYS, "Battery Level event is forwarded");
- pAppImpl->OnBatteryLevelChanged(batteryLevel);
+ int level = 0;
+ if(vconf_get_int(VCONFKEY_SYSMAN_BATTERY_LEVEL_STATUS, &level) >= 0)
+ {
+ switch(level)
+ {
+ case VCONFKEY_SYSMAN_BAT_LEVEL_EMPTY:
+ batteryLevel = BATTERY_EMPTY;
+ break;
+ case VCONFKEY_SYSMAN_BAT_LEVEL_CRITICAL:
+ batteryLevel = BATTERY_CRITICAL;
+ break;
+ case VCONFKEY_SYSMAN_BAT_LEVEL_LOW:
+ batteryLevel = BATTERY_EMPTY;
+ break;
+ case VCONFKEY_SYSMAN_BAT_LEVEL_HIGH:
+ batteryLevel = BATTERY_EMPTY;
+ break;
+ case VCONFKEY_SYSMAN_BAT_LEVEL_FULL:
+ batteryLevel = BATTERY_EMPTY;
+ break;
+ default:
+ SysLogException(NID_SYS, E_SYSTEM, "Unavailable battery level is required.");
+ return;
+ }
+ _AppImpl* pAppImpl = _AppImpl::GetInstance();
+ if(pAppImpl != null)
+ {
+ SysLog(NID_SYS, "Battery Level event is forwarded");
+ pAppImpl->OnBatteryLevelChanged(batteryLevel);
+ }
+ }
}
-
}
void
{
while(pEnumerator->MoveNext() == E_SUCCESS)
{
-
+
pEnumerator->GetCurrent(pIPowerManagerEventListener);
if(pIPowerManagerEventListener != null)
{
result
_PowerManagerImpl::InitBatteryEvent(void)
{
- int ret = 0;
- ret = device_battery_warning_set_cb(DeviceBatteryWarnCallback, null);
-
+ int ret = vconf_notify_key_changed(VCONFKEY_SYSMAN_BATTERY_LEVEL_STATUS, BatteryLevelVConfCallback, null);
SysTryReturnResult(NID_SYS, ret == 0, E_SYSTEM, "It failed to set the battery event");
return E_SUCCESS;
if (isSet == false || __pChargingEventList->GetCount() == 0)
{
- r = __pChargingEventList->Add(&listener);
+ r = __pChargingEventList->Add(&listener);
}
else
{
BatteryLevel
_PowerManagerImpl::GetCurrentBatteryLevel(void)
{
- int ret = 0;
- //int batteryLevel = 0;
- BatteryLevel level = BATTERY_FULL;
- device_battery_warn_e batteryStatus = DEVICE_BATTERY_WARN_EMPTY;
-
- ret = device_battery_get_warning_status(&batteryStatus);
+ int batteryLevel = 0;
+ BatteryLevel level = BATTERY_EMPTY;
+ int ret = vconf_get_int(VCONFKEY_SYSMAN_BATTERY_LEVEL_STATUS, &batteryLevel);
if(ret != 0)
{
- SetLastResult(E_SYSTEM);
+ SysLogException(NID_SYS, E_SYSTEM, "It is failed to get battery level.");
return level;
}
- switch (batteryStatus)
+ switch(batteryLevel)
{
- case DEVICE_BATTERY_WARN_FULL:
+ case VCONFKEY_SYSMAN_BAT_LEVEL_FULL:
level = BATTERY_LEVEL_FULL;
break;
- case DEVICE_BATTERY_WARN_NORMAL:
+ case VCONFKEY_SYSMAN_BAT_LEVEL_HIGH:
level = BATTERY_LEVEL_HIGH;
break;
- case DEVICE_BATTERY_WARN_LOW:
+ case VCONFKEY_SYSMAN_BAT_LEVEL_LOW:
level = BATTERY_LEVEL_LOW;
break;
- case DEVICE_BATTERY_WARN_CRITICAL:
+ case VCONFKEY_SYSMAN_BAT_LEVEL_CRITICAL:
level = BATTERY_LEVEL_CRITICAL;
break;
- case DEVICE_BATTERY_WARN_EMPTY:
+ default:
level = BATTERY_LEVEL_EMPTY;
break;
- default:
- SysLogException(NID_SYS, E_SYSTEM, "There is a system error occured.");
- SetLastResult(E_SYSTEM);
- return level;
}
- SetLastResult(E_SUCCESS);
+
return level;
}