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 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 class LocalDOMWindow; | 65 class LocalDOMWindow; |
66 class NavigationScheduler; | 66 class NavigationScheduler; |
67 class Node; | 67 class Node; |
68 class NodeTraversal; | 68 class NodeTraversal; |
69 class Range; | 69 class Range; |
70 class LayoutView; | 70 class LayoutView; |
71 class TreeScope; | 71 class TreeScope; |
72 class ScriptController; | 72 class ScriptController; |
73 class SpellChecker; | 73 class SpellChecker; |
74 class TreeScope; | 74 class TreeScope; |
| 75 class WebFrameHostScheduler; |
| 76 class WebFrameScheduler; |
75 template <typename Strategy> class PositionWithAffinityTemplate; | 77 template <typename Strategy> class PositionWithAffinityTemplate; |
76 | 78 |
77 class CORE_EXPORT LocalFrame : public Frame, public LocalFrameLifecycleNotifier,
public WillBeHeapSupplementable<LocalFrame> { | 79 class CORE_EXPORT LocalFrame : public Frame, public LocalFrameLifecycleNotifier,
public WillBeHeapSupplementable<LocalFrame> { |
78 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(LocalFrame); | 80 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(LocalFrame); |
79 public: | 81 public: |
80 static PassRefPtrWillBeRawPtr<LocalFrame> create(FrameLoaderClient*, FrameHo
st*, FrameOwner*); | 82 static PassRefPtrWillBeRawPtr<LocalFrame> create(FrameLoaderClient*, FrameHo
st*, FrameOwner*); |
81 | 83 |
82 void init(); | 84 void init(); |
83 void setView(PassRefPtrWillBeRawPtr<FrameView>); | 85 void setView(PassRefPtrWillBeRawPtr<FrameView>); |
84 void createView(const IntSize&, const Color&, bool, | 86 void createView(const IntSize&, const Color&, bool, |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
175 #if ENABLE(OILPAN) | 177 #if ENABLE(OILPAN) |
176 void registerPluginElement(HTMLPlugInElement*); | 178 void registerPluginElement(HTMLPlugInElement*); |
177 void unregisterPluginElement(HTMLPlugInElement*); | 179 void unregisterPluginElement(HTMLPlugInElement*); |
178 void clearWeakMembers(Visitor*); | 180 void clearWeakMembers(Visitor*); |
179 #endif | 181 #endif |
180 DisplayItemClient displayItemClient() const { return toDisplayItemClient(thi
s); } | 182 DisplayItemClient displayItemClient() const { return toDisplayItemClient(thi
s); } |
181 String debugName() const { return "LocalFrame"; } | 183 String debugName() const { return "LocalFrame"; } |
182 | 184 |
183 // ======== | 185 // ======== |
184 | 186 |
| 187 // Returns the frame scheduler, creating one if needed. |
| 188 WebFrameScheduler* frameScheduler(); |
| 189 void updateFrameSecurityOrigin(); |
| 190 |
185 private: | 191 private: |
186 LocalFrame(FrameLoaderClient*, FrameHost*, FrameOwner*); | 192 LocalFrame(FrameLoaderClient*, FrameHost*, FrameOwner*); |
187 | 193 |
188 // Internal Frame helper overrides: | 194 // Internal Frame helper overrides: |
189 WindowProxyManager* windowProxyManager() const override; | 195 WindowProxyManager* windowProxyManager() const override; |
190 | 196 |
191 String localLayerTreeAsText(unsigned flags) const; | 197 String localLayerTreeAsText(unsigned flags) const; |
192 | 198 |
193 // Paints the area for the given rect into a DragImage, with the given displ
ayItemClient id attached. | 199 // Paints the area for the given rect into a DragImage, with the given displ
ayItemClient id attached. |
194 // The rect is in the coordinate space of the frame. | 200 // The rect is in the coordinate space of the frame. |
195 PassOwnPtr<DragImage> paintIntoDragImage(const DisplayItemClientWrapper&, | 201 PassOwnPtr<DragImage> paintIntoDragImage(const DisplayItemClientWrapper&, |
196 RespectImageOrientationEnum shouldRespectImageOrientation, const GlobalP
aintFlags, | 202 RespectImageOrientationEnum shouldRespectImageOrientation, const GlobalP
aintFlags, |
197 IntRect paintingRect, float opacity = 1); | 203 IntRect paintingRect, float opacity = 1); |
198 | 204 |
199 mutable FrameLoader m_loader; | 205 mutable FrameLoader m_loader; |
200 OwnPtrWillBeMember<NavigationScheduler> m_navigationScheduler; | 206 OwnPtrWillBeMember<NavigationScheduler> m_navigationScheduler; |
201 | 207 |
202 RefPtrWillBeMember<FrameView> m_view; | 208 RefPtrWillBeMember<FrameView> m_view; |
203 RefPtrWillBeMember<LocalDOMWindow> m_domWindow; | 209 RefPtrWillBeMember<LocalDOMWindow> m_domWindow; |
204 // Usually 0. Non-null if this is the top frame of PagePopup. | 210 // Usually 0. Non-null if this is the top frame of PagePopup. |
205 RefPtrWillBeMember<Element> m_pagePopupOwner; | 211 RefPtrWillBeMember<Element> m_pagePopupOwner; |
206 | 212 |
207 const OwnPtrWillBeMember<ScriptController> m_script; | 213 const OwnPtrWillBeMember<ScriptController> m_script; |
208 const OwnPtrWillBeMember<Editor> m_editor; | 214 const OwnPtrWillBeMember<Editor> m_editor; |
209 const OwnPtrWillBeMember<SpellChecker> m_spellChecker; | 215 const OwnPtrWillBeMember<SpellChecker> m_spellChecker; |
210 const OwnPtrWillBeMember<FrameSelection> m_selection; | 216 const OwnPtrWillBeMember<FrameSelection> m_selection; |
211 const OwnPtrWillBeMember<EventHandler> m_eventHandler; | 217 const OwnPtrWillBeMember<EventHandler> m_eventHandler; |
212 const OwnPtrWillBeMember<FrameConsole> m_console; | 218 const OwnPtrWillBeMember<FrameConsole> m_console; |
213 const OwnPtrWillBeMember<InputMethodController> m_inputMethodController; | 219 const OwnPtrWillBeMember<InputMethodController> m_inputMethodController; |
| 220 OwnPtr<WebFrameScheduler> m_frameScheduler; |
214 | 221 |
215 #if ENABLE(OILPAN) | 222 #if ENABLE(OILPAN) |
216 // Oilpan: in order to reliably finalize plugin elements with | 223 // Oilpan: in order to reliably finalize plugin elements with |
217 // renderer-less plugins, the frame keeps track of them. When | 224 // renderer-less plugins, the frame keeps track of them. When |
218 // the frame is detached and disposed, these will be disposed | 225 // the frame is detached and disposed, these will be disposed |
219 // of in the process. This is needed as the plugin element | 226 // of in the process. This is needed as the plugin element |
220 // might not itself be attached to a DOM tree and be | 227 // might not itself be attached to a DOM tree and be |
221 // explicitly detached&disposed of. | 228 // explicitly detached&disposed of. |
222 // | 229 // |
223 // A weak reference is all wanted; the plugin element must | 230 // A weak reference is all wanted; the plugin element must |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
314 DECLARE_WEAK_IDENTIFIER_MAP(LocalFrame); | 321 DECLARE_WEAK_IDENTIFIER_MAP(LocalFrame); |
315 | 322 |
316 } // namespace blink | 323 } // namespace blink |
317 | 324 |
318 // During refactoring, there are some places where we need to do type conversion
s that | 325 // During refactoring, there are some places where we need to do type conversion
s that |
319 // will not be needed once all instances of LocalFrame and RemoteFrame are sorte
d out. | 326 // will not be needed once all instances of LocalFrame and RemoteFrame are sorte
d out. |
320 // At that time this #define will be removed and all the uses of it will need to
be corrected. | 327 // At that time this #define will be removed and all the uses of it will need to
be corrected. |
321 #define toLocalFrameTemporary toLocalFrame | 328 #define toLocalFrameTemporary toLocalFrame |
322 | 329 |
323 #endif // LocalFrame_h | 330 #endif // LocalFrame_h |
OLD | NEW |