Chromium Code Reviews| Index: content/renderer/screen_orientation/screen_orientation_dispatcher.h |
| diff --git a/content/renderer/screen_orientation/screen_orientation_dispatcher.h b/content/renderer/screen_orientation/screen_orientation_dispatcher.h |
| index 9d108d27668a028efb5cddb8d47a82e34edb1367..2f42f17aaf1f16c97a2814c7633adb9bfc59521d 100644 |
| --- a/content/renderer/screen_orientation/screen_orientation_dispatcher.h |
| +++ b/content/renderer/screen_orientation/screen_orientation_dispatcher.h |
| @@ -8,6 +8,7 @@ |
| #include "base/compiler_specific.h" |
| #include "base/id_map.h" |
| #include "base/macros.h" |
| +#include "content/common/screen_orientation_interface.mojom.h" |
| #include "content/public/renderer/render_frame_observer.h" |
| #include "third_party/WebKit/public/platform/modules/screen_orientation/WebLockOrientationCallback.h" |
| #include "third_party/WebKit/public/platform/modules/screen_orientation/WebScreenOrientationClient.h" |
| @@ -16,6 +17,9 @@ |
| namespace content { |
| +using mojom::ScreenOrientationAssociatedPtr; |
| +using ::blink::mojom::ScreenOrientationLockResult; |
| + |
| class RenderFrame; |
| // ScreenOrientationDispatcher implements the WebScreenOrientationClient API |
| @@ -29,11 +33,16 @@ class CONTENT_EXPORT ScreenOrientationDispatcher : |
| explicit ScreenOrientationDispatcher(RenderFrame* render_frame); |
| ~ScreenOrientationDispatcher() override; |
| + // This should only be called by ScreenOrientationDispatcherTest |
| + void SetScreenOrientationForTests( |
| + ScreenOrientationAssociatedPtr& screen_orientation_for_tests) { |
|
mlamouri (slow - plz ping)
2016/11/13 00:26:36
What do you think of moving this to private and ma
lunalu1
2016/11/16 18:46:58
Done.
|
| + screen_orientation_ = std::move(screen_orientation_for_tests); |
| + } |
| + |
| private: |
| friend class ScreenOrientationDispatcherTest; |
| // RenderFrameObserver implementation. |
| - bool OnMessageReceived(const IPC::Message& message) override; |
| void OnDestruct() override; |
| // blink::WebScreenOrientationClient implementation. |
| @@ -41,12 +50,15 @@ class CONTENT_EXPORT ScreenOrientationDispatcher : |
| blink::WebLockOrientationCallback* callback) override; |
| void unlockOrientation() override; |
| - void OnLockSuccess(int request_id); |
| - void OnLockError(int request_id, |
| - blink::WebLockOrientationError error); |
| + void OnLockOrientationResult(int request_id, |
| + ScreenOrientationLockResult result); |
| void CancelPendingLocks(); |
| + int GetRequestIdForTests(); |
| + |
| + void SetScreenOrientationInterface(); |
| + |
| // The pending_callbacks_ map is mostly meant to have a unique ID to associate |
| // with every callback going trough the dispatcher. The map will own the |
| // pointer in the sense that it will destroy it when Remove() will be called. |
| @@ -55,6 +67,8 @@ class CONTENT_EXPORT ScreenOrientationDispatcher : |
| typedef IDMap<blink::WebLockOrientationCallback, IDMapOwnPointer> CallbackMap; |
| CallbackMap pending_callbacks_; |
| + ScreenOrientationAssociatedPtr screen_orientation_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(ScreenOrientationDispatcher); |
| }; |