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 10 matching lines...) Expand all Loading... |
21 * | 21 * |
22 * You should have received a copy of the GNU Library General Public License | 22 * You should have received a copy of the GNU Library General Public License |
23 * along with this library; see the file COPYING.LIB. If not, write to | 23 * along with this library; see the file COPYING.LIB. If not, write to |
24 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 24 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
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 "heap/Handle.h" |
31 #include "wtf/Forward.h" | 32 #include "wtf/Forward.h" |
32 #include "wtf/HashSet.h" | 33 #include "wtf/HashSet.h" |
33 #include "wtf/RefCounted.h" | 34 #include "wtf/RefCounted.h" |
34 | 35 |
35 namespace blink { | 36 namespace blink { |
36 class WebLayer; | 37 class WebLayer; |
37 } | 38 } |
38 | 39 |
39 namespace WebCore { | 40 namespace WebCore { |
40 | 41 |
(...skipping 23 matching lines...) Expand all Loading... |
64 // NOTE: Page is moving out of Blink up into the browser process as | 65 // NOTE: Page is moving out of Blink up into the browser process as |
65 // part of the site-isolation (out of process iframes) work. | 66 // part of the site-isolation (out of process iframes) work. |
66 // FrameHost should be used instead where possible. | 67 // FrameHost should be used instead where possible. |
67 Page* page() const; | 68 Page* page() const; |
68 FrameHost* host() const; // Null when the frame is detached. | 69 FrameHost* host() const; // Null when the frame is detached. |
69 | 70 |
70 bool isMainFrame() const; | 71 bool isMainFrame() const; |
71 | 72 |
72 // FIXME: DOMWindow and Document should both be moved to LocalFrame | 73 // FIXME: DOMWindow and Document should both be moved to LocalFrame |
73 // after RemoteFrame is complete enough to exist without them. | 74 // after RemoteFrame is complete enough to exist without them. |
74 virtual void setDOMWindow(PassRefPtr<DOMWindow>); | 75 virtual void setDOMWindow(PassRefPtrWillBeRawPtr<DOMWindow>); |
75 DOMWindow* domWindow() const; | 76 DOMWindow* domWindow() const; |
76 Document* document() const; | 77 Document* document() const; |
77 | 78 |
78 ChromeClient& chromeClient() const; | 79 ChromeClient& chromeClient() const; |
79 | 80 |
80 RenderView* contentRenderer() const; // Root of the render tree for the docu
ment contained in this frame. | 81 RenderView* contentRenderer() const; // Root of the render tree for the docu
ment contained in this frame. |
81 | 82 |
82 int64_t frameID() const { return m_frameID; } | 83 int64_t frameID() const { return m_frameID; } |
83 | 84 |
84 // FIXME: These should move to RemoteFrame when that is instantiated. | 85 // FIXME: These should move to RemoteFrame when that is instantiated. |
85 void setRemotePlatformLayer(blink::WebLayer* remotePlatformLayer) { m_remote
PlatformLayer = remotePlatformLayer; } | 86 void setRemotePlatformLayer(blink::WebLayer* remotePlatformLayer) { m_remote
PlatformLayer = remotePlatformLayer; } |
86 blink::WebLayer* remotePlatformLayer() const { return m_remotePlatformLayer;
} | 87 blink::WebLayer* remotePlatformLayer() const { return m_remotePlatformLayer;
} |
87 | 88 |
88 Settings* settings() const; // can be null | 89 Settings* settings() const; // can be null |
89 | 90 |
90 protected: | 91 protected: |
91 Frame(FrameHost*, HTMLFrameOwnerElement*); | 92 Frame(FrameHost*, HTMLFrameOwnerElement*); |
92 | 93 |
93 FrameHost* m_host; | 94 FrameHost* m_host; |
94 HTMLFrameOwnerElement* m_ownerElement; | 95 HTMLFrameOwnerElement* m_ownerElement; |
95 | 96 |
96 RefPtr<DOMWindow> m_domWindow; | 97 RefPtrWillBePersistent<DOMWindow> m_domWindow; |
97 | 98 |
98 private: | 99 private: |
99 | 100 |
100 HashSet<FrameDestructionObserver*> m_destructionObservers; | 101 HashSet<FrameDestructionObserver*> m_destructionObservers; |
101 | 102 |
102 // Temporary hack for history. | 103 // Temporary hack for history. |
103 int64_t m_frameID; | 104 int64_t m_frameID; |
104 | 105 |
105 blink::WebLayer* m_remotePlatformLayer; | 106 blink::WebLayer* m_remotePlatformLayer; |
106 }; | 107 }; |
107 | 108 |
108 inline DOMWindow* Frame::domWindow() const | 109 inline DOMWindow* Frame::domWindow() const |
109 { | 110 { |
110 return m_domWindow.get(); | 111 return m_domWindow.get(); |
111 } | 112 } |
112 } // namespace WebCore | 113 } // namespace WebCore |
113 | 114 |
114 #endif // Frame_h | 115 #endif // Frame_h |
OLD | NEW |