| Index: third_party/WebKit/Source/platform/battery/battery_dispatcher_proxy.cc
|
| diff --git a/content/renderer/battery_status/battery_status_dispatcher.cc b/third_party/WebKit/Source/platform/battery/battery_dispatcher_proxy.cc
|
| similarity index 26%
|
| rename from content/renderer/battery_status/battery_status_dispatcher.cc
|
| rename to third_party/WebKit/Source/platform/battery/battery_dispatcher_proxy.cc
|
| index 1034cb36d38867f449b6cb804e5926eccc75c75c..1d052dddaf732d20cb99c6bec5acca217d3c4538 100644
|
| --- a/content/renderer/battery_status/battery_status_dispatcher.cc
|
| +++ b/third_party/WebKit/Source/platform/battery/battery_dispatcher_proxy.cc
|
| @@ -2,35 +2,42 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| -#include "content/renderer/battery_status/battery_status_dispatcher.h"
|
| +#include "platform/battery/battery_dispatcher_proxy.h"
|
|
|
| -#include "content/public/common/service_registry.h"
|
| -#include "content/public/renderer/render_thread.h"
|
| -#include "third_party/WebKit/public/platform/WebBatteryStatusListener.h"
|
| +#include "platform/battery/battery_status.h"
|
| +#include "platform/threading/BindForMojo.h"
|
| +#include "public/platform/Platform.h"
|
| +#include "wtf/Assertions.h"
|
|
|
| -namespace content {
|
| +namespace blink {
|
|
|
| -BatteryStatusDispatcher::BatteryStatusDispatcher(
|
| - blink::WebBatteryStatusListener* listener)
|
| +BatteryDispatcherProxy::BatteryDispatcherProxy(Listener* listener)
|
| : listener_(listener) {
|
| - DCHECK(listener_);
|
| + ASSERT(listener_);
|
| +}
|
| +
|
| +BatteryDispatcherProxy::~BatteryDispatcherProxy() {}
|
|
|
| - if (ServiceRegistry* registry = RenderThread::Get()->GetServiceRegistry()) {
|
| - // registry can be null during testing.
|
| - registry->ConnectToRemoteService(mojo::GetProxy(&monitor_));
|
| +void BatteryDispatcherProxy::StartListening() {
|
| + ASSERT(!monitor_.is_bound());
|
| + Platform::current()->connectToRemoteService(mojo::GetProxy(&monitor_));
|
| + // monitor_ can be null during testing.
|
| + if (monitor_)
|
| QueryNextStatus();
|
| - }
|
| }
|
|
|
| -BatteryStatusDispatcher::~BatteryStatusDispatcher() {
|
| +void BatteryDispatcherProxy::StopListening() {
|
| + // monitor_ can be null during testing.
|
| + if (monitor_)
|
| + monitor_.reset();
|
| }
|
|
|
| -void BatteryStatusDispatcher::QueryNextStatus() {
|
| +void BatteryDispatcherProxy::QueryNextStatus() {
|
| monitor_->QueryNextStatus(
|
| - base::Bind(&BatteryStatusDispatcher::DidChange, base::Unretained(this)));
|
| + sameThreadBindForMojo(&BatteryDispatcherProxy::OnDidChange, this));
|
| }
|
|
|
| -void BatteryStatusDispatcher::DidChange(
|
| +void BatteryDispatcherProxy::OnDidChange(
|
| device::BatteryStatusPtr battery_status) {
|
| // monitor_ can be null during testing.
|
| if (monitor_)
|
| @@ -38,12 +45,11 @@ void BatteryStatusDispatcher::DidChange(
|
|
|
| DCHECK(battery_status);
|
|
|
| - blink::WebBatteryStatus web_battery_status;
|
| - web_battery_status.charging = battery_status->charging;
|
| - web_battery_status.chargingTime = battery_status->charging_time;
|
| - web_battery_status.dischargingTime = battery_status->discharging_time;
|
| - web_battery_status.level = battery_status->level;
|
| - listener_->updateBatteryStatus(web_battery_status);
|
| + BatteryStatus status(battery_status->charging,
|
| + battery_status->charging_time,
|
| + battery_status->discharging_time,
|
| + battery_status->level);
|
| + listener_->OnUpdateBatteryStatus(status);
|
| }
|
|
|
| -} // namespace content
|
| +} // namespace blink
|
|
|