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

Side by Side Diff: third_party/WebKit/Source/core/html/HTMLFrameOwnerElement.h

Issue 1802953003: RemoteBridgeFrameOwner: keep better track of the attached frame (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Doing work in constructors is evil. Created 4 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 /* 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 29 matching lines...) Expand all
40 40
41 class CORE_EXPORT HTMLFrameOwnerElement : public HTMLElement, public FrameOwner { 41 class CORE_EXPORT HTMLFrameOwnerElement : public HTMLElement, public FrameOwner {
42 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(HTMLFrameOwnerElement); 42 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(HTMLFrameOwnerElement);
43 public: 43 public:
44 ~HTMLFrameOwnerElement() override; 44 ~HTMLFrameOwnerElement() override;
45 45
46 Frame* contentFrame() const { return m_contentFrame; } 46 Frame* contentFrame() const { return m_contentFrame; }
47 DOMWindow* contentWindow() const; 47 DOMWindow* contentWindow() const;
48 Document* contentDocument() const; 48 Document* contentDocument() const;
49 49
50 void setContentFrame(Frame&);
51 void clearContentFrame();
52
53 void disconnectContentFrame(); 50 void disconnectContentFrame();
54 51
55 // Most subclasses use LayoutPart (either LayoutEmbeddedObject or LayoutIFra me) 52 // Most subclasses use LayoutPart (either LayoutEmbeddedObject or LayoutIFra me)
56 // except for HTMLObjectElement and HTMLEmbedElement which may return any 53 // except for HTMLObjectElement and HTMLEmbedElement which may return any
57 // LayoutObject when using fallback content. 54 // LayoutObject when using fallback content.
58 LayoutPart* layoutPart() const; 55 LayoutPart* layoutPart() const;
59 56
60 Document* getSVGDocument(ExceptionState&) const; 57 Document* getSVGDocument(ExceptionState&) const;
61 58
62 virtual bool loadedNonEmptyDocument() const { return false; } 59 virtual bool loadedNonEmptyDocument() const { return false; }
63 virtual void didLoadNonEmptyDocument() { } 60 virtual void didLoadNonEmptyDocument() { }
64 61
65 void setWidget(PassRefPtrWillBeRawPtr<Widget>); 62 void setWidget(PassRefPtrWillBeRawPtr<Widget>);
66 PassRefPtrWillBeRawPtr<Widget> releaseWidget(); 63 PassRefPtrWillBeRawPtr<Widget> releaseWidget();
67 Widget* ownedWidget() const; 64 Widget* ownedWidget() const;
68 65
69 class UpdateSuspendScope { 66 class UpdateSuspendScope {
70 STACK_ALLOCATED(); 67 STACK_ALLOCATED();
71 public: 68 public:
72 UpdateSuspendScope(); 69 UpdateSuspendScope();
73 ~UpdateSuspendScope(); 70 ~UpdateSuspendScope();
74 71
75 private: 72 private:
76 void performDeferredWidgetTreeOperations(); 73 void performDeferredWidgetTreeOperations();
77 }; 74 };
78 75
79 // FrameOwner overrides: 76 // FrameOwner overrides:
80 bool isLocal() const override { return true; } 77 bool isLocal() const override { return true; }
78 void setContentFrame(Frame&) override;
79 void clearContentFrame() override;
81 void dispatchLoad() override; 80 void dispatchLoad() override;
82 SandboxFlags getSandboxFlags() const override { return m_sandboxFlags; } 81 SandboxFlags getSandboxFlags() const override { return m_sandboxFlags; }
83 void renderFallbackContent() override { } 82 void renderFallbackContent() override { }
84 ScrollbarMode scrollingMode() const override { return ScrollbarAuto; } 83 ScrollbarMode scrollingMode() const override { return ScrollbarAuto; }
85 int marginWidth() const override { return -1; } 84 int marginWidth() const override { return -1; }
86 int marginHeight() const override { return -1; } 85 int marginHeight() const override { return -1; }
87 86
88 DECLARE_VIRTUAL_TRACE(); 87 DECLARE_VIRTUAL_TRACE();
89 88
90 protected: 89 protected:
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
139 CORE_EXPORT static WillBeHeapHashCountedSet<RawPtrWillBeMember<Node>>& disab ledSubtreeRoots(); 138 CORE_EXPORT static WillBeHeapHashCountedSet<RawPtrWillBeMember<Node>>& disab ledSubtreeRoots();
140 139
141 RawPtrWillBeMember<Node> m_root; 140 RawPtrWillBeMember<Node> m_root;
142 }; 141 };
143 142
144 DEFINE_TYPE_CASTS(HTMLFrameOwnerElement, FrameOwner, owner, owner->isLocal(), ow ner.isLocal()); 143 DEFINE_TYPE_CASTS(HTMLFrameOwnerElement, FrameOwner, owner, owner->isLocal(), ow ner.isLocal());
145 144
146 } // namespace blink 145 } // namespace blink
147 146
148 #endif // HTMLFrameOwnerElement_h 147 #endif // HTMLFrameOwnerElement_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/frame/RemoteFrame.cpp ('k') | third_party/WebKit/Source/core/html/HTMLFrameOwnerElement.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698