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

Side by Side Diff: third_party/WebKit/Source/core/frame/LocalFrame.h

Issue 2449673002: Refactor InspectorWebPerfAgent: update lifecycle management to be per Local Frame root; replace hea… (Closed)
Patch Set: sync and rebase Created 4 years, 1 month 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) 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 8 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights
9 * reserved. 9 * reserved.
10 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) 10 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 class EditingAlgorithm; 52 class EditingAlgorithm;
53 class Element; 53 class Element;
54 template <typename Strategy> 54 template <typename Strategy>
55 class EphemeralRangeTemplate; 55 class EphemeralRangeTemplate;
56 class EventHandler; 56 class EventHandler;
57 class FloatSize; 57 class FloatSize;
58 class FrameConsole; 58 class FrameConsole;
59 class FrameSelection; 59 class FrameSelection;
60 class FrameView; 60 class FrameView;
61 class InputMethodController; 61 class InputMethodController;
62 class InspectorWebPerfAgent;
63 class InstrumentingAgents;
62 class InterfaceProvider; 64 class InterfaceProvider;
63 class InterfaceRegistry; 65 class InterfaceRegistry;
64 class IntPoint; 66 class IntPoint;
65 class IntSize; 67 class IntSize;
66 class InstrumentingAgents; 68 class JSONObject;
67 class LayoutView; 69 class LayoutView;
68 class LayoutViewItem; 70 class LayoutViewItem;
69 class LocalDOMWindow; 71 class LocalDOMWindow;
70 class NavigationScheduler; 72 class NavigationScheduler;
71 class Node; 73 class Node;
72 class NodeTraversal; 74 class NodeTraversal;
75 class Performance;
73 template <typename Strategy> 76 template <typename Strategy>
74 class PositionWithAffinityTemplate; 77 class PositionWithAffinityTemplate;
75 class PluginData; 78 class PluginData;
76 class Range; 79 class Range;
77 class ScriptController; 80 class ScriptController;
78 class SpellChecker; 81 class SpellChecker;
79 class WebFrameScheduler; 82 class WebFrameScheduler;
80 83
81 extern template class CORE_EXTERN_TEMPLATE_EXPORT Supplement<LocalFrame>; 84 extern template class CORE_EXTERN_TEMPLATE_EXPORT Supplement<LocalFrame>;
82 85
83 class CORE_EXPORT LocalFrame final : public Frame, 86 class CORE_EXPORT LocalFrame final : public Frame,
84 public Supplementable<LocalFrame> { 87 public Supplementable<LocalFrame> {
85 USING_GARBAGE_COLLECTED_MIXIN(LocalFrame); 88 USING_GARBAGE_COLLECTED_MIXIN(LocalFrame);
86 89
90 friend class LocalFrameTest;
91
87 public: 92 public:
88 static LocalFrame* create(FrameLoaderClient*, 93 static LocalFrame* create(FrameLoaderClient*,
89 FrameHost*, 94 FrameHost*,
90 FrameOwner*, 95 FrameOwner*,
91 InterfaceProvider* = nullptr, 96 InterfaceProvider* = nullptr,
92 InterfaceRegistry* = nullptr); 97 InterfaceRegistry* = nullptr);
93 98
94 void init(); 99 void init();
95 void setView(FrameView*); 100 void setView(FrameView*);
96 void createView(const IntSize&, 101 void createView(const IntSize&,
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
154 // change. 159 // change.
155 // In addition, this function will always return true for a detached frame. 160 // In addition, this function will always return true for a detached frame.
156 // TODO(dcheng): Move this to LocalDOMWindow and figure out the right 161 // TODO(dcheng): Move this to LocalDOMWindow and figure out the right
157 // behavior for detached windows. 162 // behavior for detached windows.
158 bool isCrossOriginSubframe() const; 163 bool isCrossOriginSubframe() const;
159 164
160 InstrumentingAgents* instrumentingAgents() { 165 InstrumentingAgents* instrumentingAgents() {
161 return m_instrumentingAgents.get(); 166 return m_instrumentingAgents.get();
162 } 167 }
163 168
169 void enableInspectorWebPerfAgent(Performance*);
170 void disableInspectorWebPerfAgent(Performance*);
171
164 // ========================================================================= 172 // =========================================================================
165 // All public functions below this point are candidates to move out of 173 // All public functions below this point are candidates to move out of
166 // LocalFrame into another class. 174 // LocalFrame into another class.
167 175
168 // See GraphicsLayerClient.h for accepted flags. 176 // See GraphicsLayerClient.h for accepted flags.
169 String layerTreeAsText(unsigned flags = 0) const; 177 String layerTreeAsText(unsigned flags = 0) const;
170 178
171 void setPrinting(bool printing, 179 void setPrinting(bool printing,
172 const FloatSize& pageSize, 180 const FloatSize& pageSize,
173 const FloatSize& originalPageSize, 181 const FloatSize& originalPageSize,
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
257 const Member<InputMethodController> m_inputMethodController; 265 const Member<InputMethodController> m_inputMethodController;
258 266
259 int m_navigationDisableCount; 267 int m_navigationDisableCount;
260 268
261 float m_pageZoomFactor; 269 float m_pageZoomFactor;
262 float m_textZoomFactor; 270 float m_textZoomFactor;
263 271
264 bool m_inViewSourceMode; 272 bool m_inViewSourceMode;
265 273
266 Member<InstrumentingAgents> m_instrumentingAgents; 274 Member<InstrumentingAgents> m_instrumentingAgents;
275 Member<InspectorWebPerfAgent> m_inspectorWebPerfAgent;
267 276
268 InterfaceProvider* const m_interfaceProvider; 277 InterfaceProvider* const m_interfaceProvider;
269 InterfaceRegistry* const m_interfaceRegistry; 278 InterfaceRegistry* const m_interfaceRegistry;
270 }; 279 };
271 280
272 inline void LocalFrame::init() { 281 inline void LocalFrame::init() {
273 m_loader.init(); 282 m_loader.init();
274 } 283 }
275 284
276 inline LocalDOMWindow* LocalFrame::localDOMWindow() const { 285 inline LocalDOMWindow* LocalFrame::localDOMWindow() const {
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
369 explicit ScopedFrameBlamer(LocalFrame*); 378 explicit ScopedFrameBlamer(LocalFrame*);
370 ~ScopedFrameBlamer(); 379 ~ScopedFrameBlamer();
371 380
372 private: 381 private:
373 Member<LocalFrame> m_frame; 382 Member<LocalFrame> m_frame;
374 }; 383 };
375 384
376 } // namespace blink 385 } // namespace blink
377 386
378 #endif // LocalFrame_h 387 #endif // LocalFrame_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698