Index: content/browser/device_orientation/orientation_message_filter.cc |
diff --git a/content/browser/device_orientation/orientation_message_filter.cc b/content/browser/device_orientation/orientation_message_filter.cc |
index 11b1e06aea610bd7cceac3f21df397d3866beeac..4829b608c1d49dce2d14860d5565eaf150840427 100644 |
--- a/content/browser/device_orientation/orientation_message_filter.cc |
+++ b/content/browser/device_orientation/orientation_message_filter.cc |
@@ -29,10 +29,11 @@ class OrientationMessageFilter::ObserverDelegate |
// Will stop observing provider when destructed. |
ObserverDelegate(Provider* provider, |
int render_view_id, |
- IPC::Sender* sender); |
+ IPC::Sender* sender, |
+ DeviceData::DeviceDataType device_data_type); |
// From Provider::Observer. |
- virtual void OnOrientationUpdate(const Orientation& orientation); |
+ virtual void OnDeviceDataUpdate(const DeviceData& device_data); |
private: |
friend class base::RefCounted<ObserverDelegate>; |
@@ -46,21 +47,24 @@ class OrientationMessageFilter::ObserverDelegate |
}; |
OrientationMessageFilter::ObserverDelegate::ObserverDelegate(Provider* provider, |
- int render_view_id, |
- IPC::Sender* sender) |
- : provider_(provider), |
- render_view_id_(render_view_id), |
- sender_(sender) { |
+ int render_view_id, IPC::Sender* sender, |
+ DeviceData::DeviceDataType device_data_type) |
+ : provider_(provider), |
+ render_view_id_(render_view_id), |
+ sender_(sender) { |
provider_->AddObserver(this); |
+ device_data_type_ = device_data_type; |
} |
OrientationMessageFilter::ObserverDelegate::~ObserverDelegate() { |
provider_->RemoveObserver(this); |
} |
-void OrientationMessageFilter::ObserverDelegate::OnOrientationUpdate( |
- const Orientation& orientation) { |
+void OrientationMessageFilter::ObserverDelegate::OnDeviceDataUpdate( |
+ const DeviceData& device_data) { |
DeviceOrientationMsg_Updated_Params params; |
+ const Orientation& orientation = static_cast<const Orientation&>(device_data); |
+ |
params.can_provide_alpha = orientation.can_provide_alpha(); |
params.alpha = orientation.alpha(); |
params.can_provide_beta = orientation.can_provide_beta(); |
@@ -92,8 +96,7 @@ void OrientationMessageFilter::OnStartUpdating(int render_view_id) { |
provider_ = Provider::GetInstance(); |
observers_map_[render_view_id] = new ObserverDelegate(provider_, |
- render_view_id, |
- this); |
+ render_view_id, this, DeviceData::kDeviceOrientationData); |
} |
void OrientationMessageFilter::OnStopUpdating(int render_view_id) { |