OLD | NEW |
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 RemoteFrame_h | 5 #ifndef RemoteFrame_h |
6 #define RemoteFrame_h | 6 #define RemoteFrame_h |
7 | 7 |
8 #include "core/CoreExport.h" | 8 #include "core/CoreExport.h" |
9 #include "core/dom/RemoteSecurityContext.h" | 9 #include "core/dom/RemoteSecurityContext.h" |
10 #include "core/frame/Frame.h" | 10 #include "core/frame/Frame.h" |
(...skipping 12 matching lines...) Expand all Loading... |
23 struct FrameLoadRequest; | 23 struct FrameLoadRequest; |
24 | 24 |
25 class CORE_EXPORT RemoteFrame: public Frame { | 25 class CORE_EXPORT RemoteFrame: public Frame { |
26 public: | 26 public: |
27 static RemoteFrame* create(RemoteFrameClient*, FrameHost*, FrameOwner*); | 27 static RemoteFrame* create(RemoteFrameClient*, FrameHost*, FrameOwner*); |
28 | 28 |
29 ~RemoteFrame() override; | 29 ~RemoteFrame() override; |
30 | 30 |
31 // Frame overrides: | 31 // Frame overrides: |
32 DECLARE_VIRTUAL_TRACE(); | 32 DECLARE_VIRTUAL_TRACE(); |
33 bool isRemoteFrame() const override { return true; } | |
34 DOMWindow* domWindow() const override; | 33 DOMWindow* domWindow() const override; |
35 WindowProxy* windowProxy(DOMWrapperWorld&) override; | 34 WindowProxy* windowProxy(DOMWrapperWorld&) override; |
36 void navigate(Document& originDocument, const KURL&, bool replaceCurrentItem
, UserGestureStatus) override; | 35 void navigate(Document& originDocument, const KURL&, bool replaceCurrentItem
, UserGestureStatus) override; |
37 void navigate(const FrameLoadRequest& passedRequest) override; | 36 void navigate(const FrameLoadRequest& passedRequest) override; |
38 void reload(FrameLoadType, ClientRedirectPolicy) override; | 37 void reload(FrameLoadType, ClientRedirectPolicy) override; |
39 void detach(FrameDetachType) override; | 38 void detach(FrameDetachType) override; |
40 RemoteSecurityContext* securityContext() const override; | 39 RemoteSecurityContext* securityContext() const override; |
41 void printNavigationErrorMessage(const Frame&, const char* reason) override
{ } | 40 void printNavigationErrorMessage(const Frame&, const char* reason) override
{ } |
42 bool prepareForCommit() override; | 41 bool prepareForCommit() override; |
43 bool shouldClose() override; | 42 bool shouldClose() override; |
(...skipping 16 matching lines...) Expand all Loading... |
60 | 59 |
61 RemoteFrameView* view() const; | 60 RemoteFrameView* view() const; |
62 | 61 |
63 RemoteFrameClient* client() const; | 62 RemoteFrameClient* client() const; |
64 | 63 |
65 private: | 64 private: |
66 RemoteFrame(RemoteFrameClient*, FrameHost*, FrameOwner*); | 65 RemoteFrame(RemoteFrameClient*, FrameHost*, FrameOwner*); |
67 | 66 |
68 // Internal Frame helper overrides: | 67 // Internal Frame helper overrides: |
69 WindowProxyManager* getWindowProxyManager() const override { return m_window
ProxyManager.get(); } | 68 WindowProxyManager* getWindowProxyManager() const override { return m_window
ProxyManager.get(); } |
| 69 // Intentionally private to prevent redundant checks when the type is |
| 70 // already RemoteFrame. |
| 71 bool isLocalFrame() const override { return false; } |
| 72 bool isRemoteFrame() const override { return true; } |
70 | 73 |
71 Member<RemoteFrameView> m_view; | 74 Member<RemoteFrameView> m_view; |
72 Member<RemoteSecurityContext> m_securityContext; | 75 Member<RemoteSecurityContext> m_securityContext; |
73 Member<RemoteDOMWindow> m_domWindow; | 76 Member<RemoteDOMWindow> m_domWindow; |
74 Member<WindowProxyManager> m_windowProxyManager; | 77 Member<WindowProxyManager> m_windowProxyManager; |
75 WebLayer* m_remotePlatformLayer; | 78 WebLayer* m_remotePlatformLayer; |
76 }; | 79 }; |
77 | 80 |
78 inline RemoteFrameView* RemoteFrame::view() const | 81 inline RemoteFrameView* RemoteFrame::view() const |
79 { | 82 { |
80 return m_view.get(); | 83 return m_view.get(); |
81 } | 84 } |
82 | 85 |
83 DEFINE_TYPE_CASTS(RemoteFrame, Frame, remoteFrame, remoteFrame->isRemoteFrame(),
remoteFrame.isRemoteFrame()); | 86 DEFINE_TYPE_CASTS(RemoteFrame, Frame, remoteFrame, remoteFrame->isRemoteFrame(),
remoteFrame.isRemoteFrame()); |
84 | 87 |
85 } // namespace blink | 88 } // namespace blink |
86 | 89 |
87 #endif // RemoteFrame_h | 90 #endif // RemoteFrame_h |
OLD | NEW |