OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2007, 2009 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007, 2009 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
8 * | 8 * |
9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 19 matching lines...) Expand all Loading... |
30 #include "platform/heap/Handle.h" | 30 #include "platform/heap/Handle.h" |
31 #include "platform/scroll/ScrollTypes.h" | 31 #include "platform/scroll/ScrollTypes.h" |
32 #include "platform/weborigin/SecurityPolicy.h" | 32 #include "platform/weborigin/SecurityPolicy.h" |
33 #include "platform/wtf/HashCountedSet.h" | 33 #include "platform/wtf/HashCountedSet.h" |
34 | 34 |
35 namespace blink { | 35 namespace blink { |
36 | 36 |
37 class ExceptionState; | 37 class ExceptionState; |
38 class Frame; | 38 class Frame; |
39 class FrameOrPlugin; | 39 class FrameOrPlugin; |
40 class FrameViewBase; | |
41 class LayoutPart; | 40 class LayoutPart; |
42 | 41 |
43 class CORE_EXPORT HTMLFrameOwnerElement : public HTMLElement, | 42 class CORE_EXPORT HTMLFrameOwnerElement : public HTMLElement, |
44 public FrameOwner { | 43 public FrameOwner { |
45 USING_GARBAGE_COLLECTED_MIXIN(HTMLFrameOwnerElement); | 44 USING_GARBAGE_COLLECTED_MIXIN(HTMLFrameOwnerElement); |
46 | 45 |
47 public: | 46 public: |
48 ~HTMLFrameOwnerElement() override; | 47 ~HTMLFrameOwnerElement() override; |
49 | 48 |
50 DOMWindow* contentWindow() const; | 49 DOMWindow* contentWindow() const; |
51 Document* contentDocument() const; | 50 Document* contentDocument() const; |
52 | 51 |
53 virtual void DisconnectContentFrame(); | 52 virtual void DisconnectContentFrame(); |
54 | 53 |
55 // Most subclasses use LayoutPart (either LayoutEmbeddedObject or | 54 // Most subclasses use LayoutPart (either LayoutEmbeddedObject or |
56 // LayoutIFrame) except for HTMLObjectElement and HTMLEmbedElement which may | 55 // LayoutIFrame) except for HTMLObjectElement and HTMLEmbedElement which may |
57 // return any LayoutObject when using fallback content. | 56 // return any LayoutObject when using fallback content. |
58 LayoutPart* GetLayoutPart() const; | 57 LayoutPart* GetLayoutPart() const; |
59 | 58 |
60 Document* getSVGDocument(ExceptionState&) const; | 59 Document* getSVGDocument(ExceptionState&) const; |
61 | 60 |
62 virtual bool LoadedNonEmptyDocument() const { return false; } | 61 virtual bool LoadedNonEmptyDocument() const { return false; } |
63 virtual void DidLoadNonEmptyDocument() {} | 62 virtual void DidLoadNonEmptyDocument() {} |
64 | 63 |
65 void SetWidget(FrameViewBase*); | 64 void SetWidget(FrameOrPlugin*); |
66 FrameViewBase* ReleaseWidget(); | 65 FrameOrPlugin* ReleaseWidget(); |
67 FrameViewBase* OwnedWidget() const; | 66 FrameOrPlugin* OwnedWidget() const { return widget_; } |
68 | 67 |
69 class UpdateSuspendScope { | 68 class UpdateSuspendScope { |
70 STACK_ALLOCATED(); | 69 STACK_ALLOCATED(); |
71 | 70 |
72 public: | 71 public: |
73 UpdateSuspendScope(); | 72 UpdateSuspendScope(); |
74 ~UpdateSuspendScope(); | 73 ~UpdateSuspendScope(); |
75 | 74 |
76 private: | 75 private: |
77 void PerformDeferredWidgetTreeOperations(); | 76 void PerformDeferredWidgetTreeOperations(); |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
134 bool IsLocal() const final { return true; } | 133 bool IsLocal() const final { return true; } |
135 bool IsRemote() const final { return false; } | 134 bool IsRemote() const final { return false; } |
136 | 135 |
137 bool IsFrameOwnerElement() const final { return true; } | 136 bool IsFrameOwnerElement() const final { return true; } |
138 | 137 |
139 virtual ReferrerPolicy ReferrerPolicyAttribute() { | 138 virtual ReferrerPolicy ReferrerPolicyAttribute() { |
140 return kReferrerPolicyDefault; | 139 return kReferrerPolicyDefault; |
141 } | 140 } |
142 | 141 |
143 Member<Frame> content_frame_; | 142 Member<Frame> content_frame_; |
144 Member<FrameViewBase> widget_; | 143 Member<FrameOrPlugin> widget_; |
145 SandboxFlags sandbox_flags_; | 144 SandboxFlags sandbox_flags_; |
146 | 145 |
147 WebParsedFeaturePolicy container_policy_; | 146 WebParsedFeaturePolicy container_policy_; |
148 }; | 147 }; |
149 | 148 |
150 DEFINE_ELEMENT_TYPE_CASTS(HTMLFrameOwnerElement, IsFrameOwnerElement()); | 149 DEFINE_ELEMENT_TYPE_CASTS(HTMLFrameOwnerElement, IsFrameOwnerElement()); |
151 | 150 |
152 class SubframeLoadingDisabler { | 151 class SubframeLoadingDisabler { |
153 STACK_ALLOCATED(); | 152 STACK_ALLOCATED(); |
154 | 153 |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
189 | 188 |
190 DEFINE_TYPE_CASTS(HTMLFrameOwnerElement, | 189 DEFINE_TYPE_CASTS(HTMLFrameOwnerElement, |
191 FrameOwner, | 190 FrameOwner, |
192 owner, | 191 owner, |
193 owner->IsLocal(), | 192 owner->IsLocal(), |
194 owner.IsLocal()); | 193 owner.IsLocal()); |
195 | 194 |
196 } // namespace blink | 195 } // namespace blink |
197 | 196 |
198 #endif // HTMLFrameOwnerElement_h | 197 #endif // HTMLFrameOwnerElement_h |
OLD | NEW |