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..dc200c15a294706bcc85fe72091b8ee5101c7a3f 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.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 |
@@ -33,7 +37,6 @@ class CONTENT_EXPORT ScreenOrientationDispatcher : |
friend class ScreenOrientationDispatcherTest; |
// RenderFrameObserver implementation. |
- bool OnMessageReceived(const IPC::Message& message) override; |
void OnDestruct() override; |
// blink::WebScreenOrientationClient implementation. |
@@ -41,12 +44,21 @@ 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 EnsureScreenOrientationService(); |
+ |
+ // This should only be called by ScreenOrientationDispatcherTest |
+ void SetScreenOrientationForTests( |
+ ScreenOrientationAssociatedPtr& screen_orientation_for_tests) { |
+ screen_orientation_ = std::move(screen_orientation_for_tests); |
+ } |
+ |
// 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); |
}; |