| 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..045308b36964d132dd513908d3cdce8bd6943817 100644
|
| --- a/content/browser/device_orientation/orientation_message_filter.cc
|
| +++ b/content/browser/device_orientation/orientation_message_filter.cc
|
| @@ -4,10 +4,7 @@
|
|
|
| #include "content/browser/device_orientation/orientation_message_filter.h"
|
|
|
| -#include "base/memory/scoped_ptr.h"
|
| -#include "content/browser/device_orientation/orientation.h"
|
| -#include "content/browser/device_orientation/provider.h"
|
| -#include "content/browser/renderer_host/render_view_host_impl.h"
|
| +#include "content/browser/device_orientation/device_data.h"
|
| #include "content/common/device_orientation_messages.h"
|
| #include "content/public/browser/browser_thread.h"
|
|
|
| @@ -15,66 +12,15 @@ using content::BrowserThread;
|
|
|
| namespace device_orientation {
|
|
|
| -OrientationMessageFilter::OrientationMessageFilter() : provider_(NULL) {
|
| +OrientationMessageFilter::OrientationMessageFilter()
|
| + : MessageFilter(DeviceData::kTypeOrientation) {
|
| }
|
|
|
| OrientationMessageFilter::~OrientationMessageFilter() {
|
| }
|
|
|
| -class OrientationMessageFilter::ObserverDelegate
|
| - : public base::RefCounted<ObserverDelegate>, public Provider::Observer {
|
| - public:
|
| - // Create ObserverDelegate that observes provider and forwards updates to
|
| - // render_view_id in process_id.
|
| - // Will stop observing provider when destructed.
|
| - ObserverDelegate(Provider* provider,
|
| - int render_view_id,
|
| - IPC::Sender* sender);
|
| -
|
| - // From Provider::Observer.
|
| - virtual void OnOrientationUpdate(const Orientation& orientation);
|
| -
|
| - private:
|
| - friend class base::RefCounted<ObserverDelegate>;
|
| - virtual ~ObserverDelegate();
|
| -
|
| - scoped_refptr<Provider> provider_;
|
| - int render_view_id_;
|
| - IPC::Sender* sender_; // Weak pointer.
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(ObserverDelegate);
|
| -};
|
| -
|
| -OrientationMessageFilter::ObserverDelegate::ObserverDelegate(Provider* provider,
|
| - int render_view_id,
|
| - IPC::Sender* sender)
|
| - : provider_(provider),
|
| - render_view_id_(render_view_id),
|
| - sender_(sender) {
|
| - provider_->AddObserver(this);
|
| -}
|
| -
|
| -OrientationMessageFilter::ObserverDelegate::~ObserverDelegate() {
|
| - provider_->RemoveObserver(this);
|
| -}
|
| -
|
| -void OrientationMessageFilter::ObserverDelegate::OnOrientationUpdate(
|
| - const Orientation& orientation) {
|
| - DeviceOrientationMsg_Updated_Params params;
|
| - params.can_provide_alpha = orientation.can_provide_alpha();
|
| - params.alpha = orientation.alpha();
|
| - params.can_provide_beta = orientation.can_provide_beta();
|
| - params.beta = orientation.beta();
|
| - params.can_provide_gamma = orientation.can_provide_gamma();
|
| - params.gamma = orientation.gamma();
|
| - params.can_provide_absolute = orientation.can_provide_absolute();
|
| - params.absolute = orientation.absolute();
|
| -
|
| - sender_->Send(new DeviceOrientationMsg_Updated(render_view_id_, params));
|
| -}
|
| -
|
| bool OrientationMessageFilter::OnMessageReceived(const IPC::Message& message,
|
| - bool* message_was_ok) {
|
| + bool* message_was_ok) {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
|
| bool handled = true;
|
| IPC_BEGIN_MESSAGE_MAP_EX(OrientationMessageFilter, message, *message_was_ok)
|
| @@ -85,21 +31,4 @@ bool OrientationMessageFilter::OnMessageReceived(const IPC::Message& message,
|
| return handled;
|
| }
|
|
|
| -void OrientationMessageFilter::OnStartUpdating(int render_view_id) {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
|
| -
|
| - if (!provider_)
|
| - provider_ = Provider::GetInstance();
|
| -
|
| - observers_map_[render_view_id] = new ObserverDelegate(provider_,
|
| - render_view_id,
|
| - this);
|
| -}
|
| -
|
| -void OrientationMessageFilter::OnStopUpdating(int render_view_id) {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
|
| -
|
| - observers_map_.erase(render_view_id);
|
| -}
|
| -
|
| } // namespace device_orientation
|
|
|