Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Side by Side Diff: content/renderer/device_sensors/device_orientation_event_pump.h

Issue 446603002: Refactor code listening to platform events in content/renderer/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@webkitplatform_impl_start_stop
Patch Set: rebase Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_RENDERER_DEVICE_SENSORS_DEVICE_ORIENTATION_EVENT_PUMP_H_ 5 #ifndef CONTENT_RENDERER_DEVICE_SENSORS_DEVICE_ORIENTATION_EVENT_PUMP_H_
6 #define CONTENT_RENDERER_DEVICE_SENSORS_DEVICE_ORIENTATION_EVENT_PUMP_H_ 6 #define CONTENT_RENDERER_DEVICE_SENSORS_DEVICE_ORIENTATION_EVENT_PUMP_H_
7 7
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "content/renderer/device_sensors/device_sensor_event_pump.h" 9 #include "content/renderer/device_sensors/device_sensor_event_pump.h"
10 #include "content/renderer/shared_memory_seqlock_reader.h" 10 #include "content/renderer/shared_memory_seqlock_reader.h"
11 #include "third_party/WebKit/public/platform/WebDeviceOrientationData.h" 11 #include "third_party/WebKit/public/platform/WebDeviceOrientationData.h"
12 12
13 namespace blink { 13 namespace blink {
14 class WebDeviceOrientationListener; 14 class WebDeviceOrientationListener;
15 } 15 }
16 16
17 namespace content { 17 namespace content {
18 18
19 typedef SharedMemorySeqLockReader<blink::WebDeviceOrientationData> 19 typedef SharedMemorySeqLockReader<blink::WebDeviceOrientationData>
20 DeviceOrientationSharedMemoryReader; 20 DeviceOrientationSharedMemoryReader;
21 21
22 class CONTENT_EXPORT DeviceOrientationEventPump : public DeviceSensorEventPump { 22 class CONTENT_EXPORT DeviceOrientationEventPump
23 : public DeviceSensorEventPump<blink::WebDeviceOrientationListener> {
23 public: 24 public:
24 // Angle threshold beyond which two orientation events are considered 25 // Angle threshold beyond which two orientation events are considered
25 // sufficiently different. 26 // sufficiently different.
26 static const double kOrientationThreshold; 27 static const double kOrientationThreshold;
27 28
28 DeviceOrientationEventPump(); 29 explicit DeviceOrientationEventPump(RenderThread* thread);
29 explicit DeviceOrientationEventPump(int pump_delay_millis);
30 virtual ~DeviceOrientationEventPump(); 30 virtual ~DeviceOrientationEventPump();
31 31
32 // Sets the listener to receive updates for device orientation data at 32 // PlatformEventObserver.
33 // regular intervals. Returns true if the registration was successful.
34 bool SetListener(blink::WebDeviceOrientationListener* listener);
35
36 // RenderProcessObserver implementation.
37 virtual bool OnControlMessageReceived(const IPC::Message& message) OVERRIDE; 33 virtual bool OnControlMessageReceived(const IPC::Message& message) OVERRIDE;
34 virtual void SendFakeDataForTesting(void* data) OVERRIDE;
38 35
39 protected: 36 protected:
40 virtual void FireEvent() OVERRIDE; 37 virtual void FireEvent() OVERRIDE;
41 virtual bool InitializeReader(base::SharedMemoryHandle handle) OVERRIDE; 38 virtual bool InitializeReader(base::SharedMemoryHandle handle) OVERRIDE;
42 virtual bool SendStartMessage() OVERRIDE; 39
43 virtual bool SendStopMessage() OVERRIDE; 40 // PlatformEventObserver.
41 virtual void SendStartMessage() OVERRIDE;
42 virtual void SendStopMessage() OVERRIDE;
44 43
45 bool ShouldFireEvent(const blink::WebDeviceOrientationData& data) const; 44 bool ShouldFireEvent(const blink::WebDeviceOrientationData& data) const;
46 45
47 blink::WebDeviceOrientationListener* listener_;
48 blink::WebDeviceOrientationData data_; 46 blink::WebDeviceOrientationData data_;
49 scoped_ptr<DeviceOrientationSharedMemoryReader> reader_; 47 scoped_ptr<DeviceOrientationSharedMemoryReader> reader_;
48
49 DISALLOW_COPY_AND_ASSIGN(DeviceOrientationEventPump);
50 }; 50 };
51 51
52 } // namespace content 52 } // namespace content
53 53
54 #endif // CONTENT_RENDERER_DEVICE_SENSORS_DEVICE_ORIENTATION_EVENT_PUMP_H_ 54 #endif // CONTENT_RENDERER_DEVICE_SENSORS_DEVICE_ORIENTATION_EVENT_PUMP_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698