Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(109)

Side by Side Diff: third_party/WebKit/Source/core/frame/RemoteFrame.h

Issue 2702273004: bindings: Simplifies WindowProxyManager and its relation to Frame. (Closed)
Patch Set: Fixed WindowProxyManager::createWindowProxy(ForFrame). Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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"
11 #include "public/platform/WebFocusType.h" 11 #include "public/platform/WebFocusType.h"
12 12
13 namespace blink { 13 namespace blink {
14 14
15 class Event; 15 class Event;
16 class LocalFrame; 16 class LocalFrame;
17 class RemoteFrameClient; 17 class RemoteFrameClient;
18 class RemoteFrameView; 18 class RemoteFrameView;
19 class RemoteWindowProxyManager;
20 class WebLayer; 19 class WebLayer;
21 struct FrameLoadRequest; 20 struct FrameLoadRequest;
22 21
23 class CORE_EXPORT RemoteFrame final : public Frame { 22 class CORE_EXPORT RemoteFrame final : public Frame {
24 public: 23 public:
25 static RemoteFrame* create(RemoteFrameClient*, FrameHost*, FrameOwner*); 24 static RemoteFrame* create(RemoteFrameClient*, FrameHost*, FrameOwner*);
26 25
27 ~RemoteFrame() override; 26 ~RemoteFrame() override;
28 27
29 // Frame overrides: 28 // Frame overrides:
30 DECLARE_VIRTUAL_TRACE(); 29 DECLARE_VIRTUAL_TRACE();
31 WindowProxy* windowProxy(DOMWrapperWorld&) override;
32 void navigate(Document& originDocument, 30 void navigate(Document& originDocument,
33 const KURL&, 31 const KURL&,
34 bool replaceCurrentItem, 32 bool replaceCurrentItem,
35 UserGestureStatus) override; 33 UserGestureStatus) override;
36 void navigate(const FrameLoadRequest& passedRequest) override; 34 void navigate(const FrameLoadRequest& passedRequest) override;
37 void reload(FrameLoadType, ClientRedirectPolicy) override; 35 void reload(FrameLoadType, ClientRedirectPolicy) override;
38 void detach(FrameDetachType) override; 36 void detach(FrameDetachType) override;
39 RemoteSecurityContext* securityContext() const override; 37 RemoteSecurityContext* securityContext() const override;
40 void printNavigationErrorMessage(const Frame&, const char* reason) override {} 38 void printNavigationErrorMessage(const Frame&, const char* reason) override {}
41 void printNavigationWarning(const String&) override {} 39 void printNavigationWarning(const String&) override {}
(...skipping 12 matching lines...) Expand all
54 void setView(RemoteFrameView*); 52 void setView(RemoteFrameView*);
55 void createView(); 53 void createView();
56 54
57 RemoteFrameView* view() const; 55 RemoteFrameView* view() const;
58 56
59 RemoteFrameClient* client() const; 57 RemoteFrameClient* client() const;
60 58
61 private: 59 private:
62 RemoteFrame(RemoteFrameClient*, FrameHost*, FrameOwner*); 60 RemoteFrame(RemoteFrameClient*, FrameHost*, FrameOwner*);
63 61
64 // Internal Frame helper overrides:
65 WindowProxyManagerBase* getWindowProxyManager() const override;
66
67 // Intentionally private to prevent redundant checks when the type is 62 // Intentionally private to prevent redundant checks when the type is
68 // already RemoteFrame. 63 // already RemoteFrame.
69 bool isLocalFrame() const override { return false; } 64 bool isLocalFrame() const override { return false; }
70 bool isRemoteFrame() const override { return true; } 65 bool isRemoteFrame() const override { return true; }
71 66
72 void detachChildren(); 67 void detachChildren();
73 68
74 Member<RemoteFrameView> m_view; 69 Member<RemoteFrameView> m_view;
75 Member<RemoteSecurityContext> m_securityContext; 70 Member<RemoteSecurityContext> m_securityContext;
76 Member<RemoteWindowProxyManager> m_windowProxyManager;
77 WebLayer* m_webLayer = nullptr; 71 WebLayer* m_webLayer = nullptr;
78 }; 72 };
79 73
80 inline RemoteFrameView* RemoteFrame::view() const { 74 inline RemoteFrameView* RemoteFrame::view() const {
81 return m_view.get(); 75 return m_view.get();
82 } 76 }
83 77
84 DEFINE_TYPE_CASTS(RemoteFrame, 78 DEFINE_TYPE_CASTS(RemoteFrame,
85 Frame, 79 Frame,
86 remoteFrame, 80 remoteFrame,
87 remoteFrame->isRemoteFrame(), 81 remoteFrame->isRemoteFrame(),
88 remoteFrame.isRemoteFrame()); 82 remoteFrame.isRemoteFrame());
89 83
90 } // namespace blink 84 } // namespace blink
91 85
92 #endif // RemoteFrame_h 86 #endif // RemoteFrame_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698