OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> | 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> |
3 * 1999-2001 Lars Knoll <knoll@kde.org> | 3 * 1999-2001 Lars Knoll <knoll@kde.org> |
4 * 1999-2001 Antti Koivisto <koivisto@kde.org> | 4 * 1999-2001 Antti Koivisto <koivisto@kde.org> |
5 * 2000-2001 Simon Hausmann <hausmann@kde.org> | 5 * 2000-2001 Simon Hausmann <hausmann@kde.org> |
6 * 2000-2001 Dirk Mueller <mueller@kde.org> | 6 * 2000-2001 Dirk Mueller <mueller@kde.org> |
7 * 2000 Stefan Schimanski <1Stein@gmx.de> | 7 * 2000 Stefan Schimanski <1Stein@gmx.de> |
8 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights
reserved. | 8 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights
reserved. |
9 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 9 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
10 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> | 10 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> |
(...skipping 14 matching lines...) Expand all Loading... |
25 * Boston, MA 02110-1301, USA. | 25 * Boston, MA 02110-1301, USA. |
26 */ | 26 */ |
27 | 27 |
28 #ifndef Frame_h | 28 #ifndef Frame_h |
29 #define Frame_h | 29 #define Frame_h |
30 | 30 |
31 #include "core/CoreExport.h" | 31 #include "core/CoreExport.h" |
32 #include "core/frame/FrameTypes.h" | 32 #include "core/frame/FrameTypes.h" |
33 #include "core/loader/FrameLoaderTypes.h" | 33 #include "core/loader/FrameLoaderTypes.h" |
34 #include "core/page/FrameTree.h" | 34 #include "core/page/FrameTree.h" |
| 35 #include "platform/feature_policy/FeaturePolicy.h" |
35 #include "platform/heap/Handle.h" | 36 #include "platform/heap/Handle.h" |
36 #include "wtf/Forward.h" | 37 #include "wtf/Forward.h" |
37 | 38 |
38 namespace blink { | 39 namespace blink { |
39 | 40 |
40 class ChromeClient; | 41 class ChromeClient; |
41 class DOMWindow; | 42 class DOMWindow; |
42 class DOMWrapperWorld; | 43 class DOMWrapperWorld; |
43 class Document; | 44 class Document; |
44 class FrameClient; | 45 class FrameClient; |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
98 | 99 |
99 FrameOwner* owner() const; | 100 FrameOwner* owner() const; |
100 void setOwner(FrameOwner* owner) { m_owner = owner; } | 101 void setOwner(FrameOwner* owner) { m_owner = owner; } |
101 HTMLFrameOwnerElement* deprecatedLocalOwner() const; | 102 HTMLFrameOwnerElement* deprecatedLocalOwner() const; |
102 | 103 |
103 FrameTree& tree() const; | 104 FrameTree& tree() const; |
104 ChromeClient& chromeClient() const; | 105 ChromeClient& chromeClient() const; |
105 | 106 |
106 virtual SecurityContext* securityContext() const = 0; | 107 virtual SecurityContext* securityContext() const = 0; |
107 | 108 |
| 109 FeaturePolicy* getFeaturePolicy() const { return m_featurePolicy; } |
| 110 void setFeaturePolicy(FeaturePolicy* newPolicy) { m_featurePolicy = newPolic
y; } |
| 111 |
108 Frame* findFrameForNavigation(const AtomicString& name, Frame& activeFrame); | 112 Frame* findFrameForNavigation(const AtomicString& name, Frame& activeFrame); |
109 Frame* findUnsafeParentScrollPropagationBoundary(); | 113 Frame* findUnsafeParentScrollPropagationBoundary(); |
110 | 114 |
111 // This prepares the Frame for the next commit. It will detach children, | 115 // This prepares the Frame for the next commit. It will detach children, |
112 // dispatch unload events, abort XHR requests and detach the document. | 116 // dispatch unload events, abort XHR requests and detach the document. |
113 // Returns true if the frame is ready to receive the next commit, or false | 117 // Returns true if the frame is ready to receive the next commit, or false |
114 // otherwise. | 118 // otherwise. |
115 virtual bool prepareForCommit() = 0; | 119 virtual bool prepareForCommit() = 0; |
116 | 120 |
117 bool canNavigate(const Frame&); | 121 bool canNavigate(const Frame&); |
(...skipping 23 matching lines...) Expand all Loading... |
141 mutable FrameTree m_treeNode; | 145 mutable FrameTree m_treeNode; |
142 | 146 |
143 Member<FrameHost> m_host; | 147 Member<FrameHost> m_host; |
144 Member<FrameOwner> m_owner; | 148 Member<FrameOwner> m_owner; |
145 | 149 |
146 private: | 150 private: |
147 bool canNavigateWithoutFramebusting(const Frame&, String& errorReason); | 151 bool canNavigateWithoutFramebusting(const Frame&, String& errorReason); |
148 | 152 |
149 Member<FrameClient> m_client; | 153 Member<FrameClient> m_client; |
150 bool m_isLoading; | 154 bool m_isLoading; |
| 155 |
| 156 Member<FeaturePolicy> m_featurePolicy; |
151 }; | 157 }; |
152 | 158 |
153 inline FrameClient* Frame::client() const | 159 inline FrameClient* Frame::client() const |
154 { | 160 { |
155 return m_client; | 161 return m_client; |
156 } | 162 } |
157 | 163 |
158 inline FrameOwner* Frame::owner() const | 164 inline FrameOwner* Frame::owner() const |
159 { | 165 { |
160 return m_owner; | 166 return m_owner; |
161 } | 167 } |
162 | 168 |
163 inline FrameTree& Frame::tree() const | 169 inline FrameTree& Frame::tree() const |
164 { | 170 { |
165 return m_treeNode; | 171 return m_treeNode; |
166 } | 172 } |
167 | 173 |
168 // Allow equality comparisons of Frames by reference or pointer, interchangeably
. | 174 // Allow equality comparisons of Frames by reference or pointer, interchangeably
. |
169 DEFINE_COMPARISON_OPERATORS_WITH_REFERENCES(Frame) | 175 DEFINE_COMPARISON_OPERATORS_WITH_REFERENCES(Frame) |
170 | 176 |
171 } // namespace blink | 177 } // namespace blink |
172 | 178 |
173 #endif // Frame_h | 179 #endif // Frame_h |
OLD | NEW |