Chromium Code Reviews| Index: chrome/browser/ui/webui/chromeos/emulator/device_emulator_message_handler.cc |
| diff --git a/chrome/browser/ui/webui/chromeos/emulator/device_emulator_message_handler.cc b/chrome/browser/ui/webui/chromeos/emulator/device_emulator_message_handler.cc |
| index 83b0af469c120e9e1f88e6de44394d81965bded6..db492a4abf518b5c349aa5bd032a766d64f60efa 100644 |
| --- a/chrome/browser/ui/webui/chromeos/emulator/device_emulator_message_handler.cc |
| +++ b/chrome/browser/ui/webui/chromeos/emulator/device_emulator_message_handler.cc |
| @@ -22,6 +22,7 @@ const char kRequestPowerInfo[] = "requestPowerInfo"; |
| // Define update functions that will update the power properties to the |
| // variables defined in the web UI. |
| const char kUpdateBatteryPercent[] = "updateBatteryPercent"; |
| +const char kUpdateBatteryState[] = "updateBatteryState"; |
| const char kUpdateExternalPower[] = "updateExternalPower"; |
| const char kUpdateTimeToEmpty[] = "updateTimeToEmpty"; |
| const char kUpdateTimeToFull[] = "updateTimeToFull"; |
| @@ -78,16 +79,31 @@ void DeviceEmulatorMessageHandler::UpdateBatteryPercent( |
| fake_power_manager_client_->UpdatePowerProperties(props); |
| } |
| -void DeviceEmulatorMessageHandler::UpdateExternalPower( |
| +void DeviceEmulatorMessageHandler::UpdateBatteryState( |
| const base::ListValue* args) { |
| - int power_source; |
| - args->GetInteger(0, &power_source); |
| + power_manager::PowerSupplyProperties props = |
| + fake_power_manager_client_->props(); |
| + |
| + int battery_state; |
| + if (args->GetInteger(0, &battery_state)) |
| + props.set_battery_state( |
| + static_cast<power_manager::PowerSupplyProperties_BatteryState>( |
| + battery_state)); |
| + fake_power_manager_client_->UpdatePowerProperties(props); |
| +} |
| + |
| +void DeviceEmulatorMessageHandler::UpdateExternalPower( |
| + const base::ListValue* args) { |
| power_manager::PowerSupplyProperties props = |
| fake_power_manager_client_->props(); |
| + |
| + int power_source; |
| + if (args->GetInteger(0, &power_source)) |
| props.set_external_power( |
| static_cast<power_manager::PowerSupplyProperties_ExternalPower>( |
| power_source)); |
| + |
| fake_power_manager_client_->UpdatePowerProperties(props); |
| } |
| @@ -107,9 +123,11 @@ void DeviceEmulatorMessageHandler::UpdateTimeToFull( |
| const base::ListValue* args) { |
| power_manager::PowerSupplyProperties props = |
| fake_power_manager_client_->props(); |
| + |
| int new_time; |
| if (args->GetInteger(0, &new_time)) |
| props.set_battery_time_to_full_sec(new_time); |
| + |
| fake_power_manager_client_->UpdatePowerProperties(props); |
| } |
| @@ -118,11 +136,12 @@ void DeviceEmulatorMessageHandler::PowerChanged( |
| web_ui()->CallJavascriptFunction( |
| kUpdatePowerPropertiesJSCallback, |
| base::FundamentalValue(proto.battery_percent()), |
| + base::FundamentalValue(proto.battery_state())), |
|
oshima
2015/07/29 00:50:48
does this compile?
mozartalouis
2015/07/29 21:06:04
Done.
|
| base::FundamentalValue(proto.external_power()), |
| base::FundamentalValue( |
| static_cast<int>(proto.battery_time_to_empty_sec())), |
| base::FundamentalValue( |
| - static_cast<int>(proto.battery_time_to_full_sec()))); |
| + static_cast<int>(proto.battery_time_to_full_sec())); |
| } |
| void DeviceEmulatorMessageHandler::RegisterMessages() { |
| @@ -135,6 +154,10 @@ void DeviceEmulatorMessageHandler::RegisterMessages() { |
| base::Bind(&DeviceEmulatorMessageHandler::UpdateBatteryPercent, |
| base::Unretained(this))); |
| web_ui()->RegisterMessageCallback( |
| + kUpdateBatteryState, |
| + base::Bind(&DeviceEmulatorMessageHandler::UpdateBatteryState, |
| + base::Unretained(this))); |
| + web_ui()->RegisterMessageCallback( |
| kUpdateExternalPower, |
| base::Bind(&DeviceEmulatorMessageHandler::UpdateExternalPower, |
| base::Unretained(this))); |