Index: content/renderer/device_sensors/device_light_event_pump.cc |
diff --git a/content/renderer/device_sensors/device_light_event_pump.cc b/content/renderer/device_sensors/device_light_event_pump.cc |
index 53567441df879f54439b7b8d5527e6b12f2df0f8..f897a5d0305060d68d1d7207d4f8cf45dd91c089 100644 |
--- a/content/renderer/device_sensors/device_light_event_pump.cc |
+++ b/content/renderer/device_sensors/device_light_event_pump.cc |
@@ -4,8 +4,9 @@ |
#include "content/renderer/device_sensors/device_light_event_pump.h" |
+#include "base/process/process_handle.h" |
#include "base/time/time.h" |
-#include "content/common/device_sensors/device_light_messages.h" |
+#include "content/public/common/service_registry.h" |
#include "content/public/renderer/render_thread.h" |
#include "third_party/WebKit/public/platform/WebDeviceLightListener.h" |
@@ -18,31 +19,30 @@ const int kDefaultLightPumpDelayMicroseconds = |
namespace content { |
-DeviceLightEventPump::DeviceLightEventPump(RenderThread* thread) |
- : DeviceSensorEventPump<blink::WebDeviceLightListener>(thread), |
- last_seen_data_(-1) { |
+DeviceLightEventPump::DeviceLightEventPump( |
+ blink::WebDeviceLightListener* listener) |
+ : last_seen_data_(-1), listener_(listener) { |
pump_delay_microseconds_ = kDefaultLightPumpDelayMicroseconds; |
+ LOG(WARNING) << "DeviceLightEventPump::DeviceLightEventPump"; |
+ if (ServiceRegistry* registry = RenderThread::Get()->GetServiceRegistry()) { |
+ // registry can be null during testing. |
+ registry->ConnectToRemoteService(&service_); |
+ service_->StartPolling( |
+ static_cast<int32>(base::GetCurrentProcId()), |
+ base::Bind(&DeviceLightEventPump::OnDidStart, base::Unretained(this))); |
+ } |
} |
DeviceLightEventPump::~DeviceLightEventPump() { |
} |
-bool DeviceLightEventPump::OnControlMessageReceived( |
- const IPC::Message& message) { |
- bool handled = true; |
- IPC_BEGIN_MESSAGE_MAP(DeviceLightEventPump, message) |
- IPC_MESSAGE_HANDLER(DeviceLightMsg_DidStartPolling, OnDidStart) |
- IPC_MESSAGE_UNHANDLED(handled = false) |
- IPC_END_MESSAGE_MAP() |
- return handled; |
-} |
- |
void DeviceLightEventPump::FireEvent() { |
- DCHECK(listener()); |
- DeviceLightData data; |
+ LOG(WARNING) << "DeviceLightEventPump::FireEvent"; |
+ DCHECK(listener_); |
+ device::DeviceLightData data; |
if (reader_->GetLatestData(&data) && ShouldFireEvent(data.value)) { |
last_seen_data_ = data.value; |
- listener()->didChangeDeviceLight(data.value); |
+ listener_->didChangeDeviceLight(data.value); |
} |
} |
@@ -64,19 +64,10 @@ bool DeviceLightEventPump::InitializeReader(base::SharedMemoryHandle handle) { |
return reader_->Initialize(handle); |
} |
-void DeviceLightEventPump::SendStartMessage() { |
- RenderThread::Get()->Send(new DeviceLightHostMsg_StartPolling()); |
-} |
- |
-void DeviceLightEventPump::SendStopMessage() { |
- last_seen_data_ = -1; |
- RenderThread::Get()->Send(new DeviceLightHostMsg_StopPolling()); |
-} |
- |
void DeviceLightEventPump::SendFakeDataForTesting(void* fake_data) { |
double data = *static_cast<double*>(fake_data); |
- listener()->didChangeDeviceLight(data); |
+ listener_->didChangeDeviceLight(data); |
} |
} // namespace content |