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

Side by Side Diff: Source/core/inspector/InspectorTraceEvents.h

Issue 1025213002: Begin tracking why layout is invalidated (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebase Created 5 years, 8 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef InspectorTraceEvents_h 5 #ifndef InspectorTraceEvents_h
6 #define InspectorTraceEvents_h 6 #define InspectorTraceEvents_h
7 7
8 #include "core/css/CSSSelector.h" 8 #include "core/css/CSSSelector.h"
9 #include "platform/EventTracer.h" 9 #include "platform/EventTracer.h"
10 #include "platform/TraceEvent.h" 10 #include "platform/TraceEvent.h"
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
101 "data", \ 101 "data", \
102 InspectorStyleInvalidatorInvalidateEvent::data((element), (InspectorStyl eInvalidatorInvalidateEvent::reason))) 102 InspectorStyleInvalidatorInvalidateEvent::data((element), (InspectorStyl eInvalidatorInvalidateEvent::reason)))
103 103
104 #define TRACE_STYLE_INVALIDATOR_INVALIDATION_SELECTORPART(element, reason, inval idationSet, singleSelectorPart) \ 104 #define TRACE_STYLE_INVALIDATOR_INVALIDATION_SELECTORPART(element, reason, inval idationSet, singleSelectorPart) \
105 TRACE_EVENT_INSTANT1( \ 105 TRACE_EVENT_INSTANT1( \
106 TRACE_DISABLED_BY_DEFAULT("devtools.timeline.invalidationTracking"), \ 106 TRACE_DISABLED_BY_DEFAULT("devtools.timeline.invalidationTracking"), \
107 "StyleInvalidatorInvalidationTracking", \ 107 "StyleInvalidatorInvalidationTracking", \
108 "data", \ 108 "data", \
109 InspectorStyleInvalidatorInvalidateEvent::selectorPart((element), (Inspe ctorStyleInvalidatorInvalidateEvent::reason), (invalidationSet), (singleSelector Part))) 109 InspectorStyleInvalidatorInvalidateEvent::selectorPart((element), (Inspe ctorStyleInvalidatorInvalidateEvent::reason), (invalidationSet), (singleSelector Part)))
110 110
111 // From a web developer's perspective: what caused this layout? This is strictly
112 // for tracing. Blink logic must not depend on these.
113 namespace LayoutInvalidationReason {
114 extern const char Unknown[];
115 extern const char SizeChanged[];
116 extern const char AncestorMoved[];
117 extern const char StyleChange[];
118 extern const char DomChanged[];
119 extern const char TextChanged[];
120 extern const char PrintingChanged[];
121 extern const char AttributeChanged[];
122 extern const char ColumnsChanged[];
123 extern const char ChildAnonymousBlockChanged[];
124 extern const char AnonymousBlockChange[];
125 extern const char Fullscreen[];
126 extern const char ChildChanged[];
127 extern const char ListValueChange[];
128 extern const char ImageChanged[];
129 extern const char LineBoxesChanged[];
130 extern const char SliderValueChanged[];
131 extern const char AncestorMarginCollapsing[];
132 extern const char FieldsetChanged[];
133 extern const char TextAutosizing[];
134 extern const char SvgResourceInvalidated[];
135 extern const char FloatDescendantChanged[];
136 extern const char CountersChanged[];
137 extern const char GridChanged[];
138 extern const char MenuWidthChanged[];
139 extern const char RemovedFromLayout[];
140 extern const char AddedToLayout[];
141 extern const char TableChanged[];
142 extern const char PaddingChanged[];
143 extern const char TextControlChanged[];
144 // FIXME: This is too generic, we should be able to split out transform and
145 // size related invalidations.
146 extern const char SvgChanged[];
147 extern const char ScrollbarChanged[];
148 }
149
150 // LayoutInvalidationReasonForTracing is strictly for tracing. Blink logic must
151 // not depend on this value.
152 typedef const char LayoutInvalidationReasonForTracing[];
153
111 class InspectorLayoutInvalidationTrackingEvent { 154 class InspectorLayoutInvalidationTrackingEvent {
112 public: 155 public:
113 static PassRefPtr<TraceEvent::ConvertableToTraceFormat> data(const LayoutObj ect*); 156 static PassRefPtr<TraceEvent::ConvertableToTraceFormat> data(const LayoutObj ect*, LayoutInvalidationReasonForTracing);
114 }; 157 };
115 158
116 class InspectorPaintInvalidationTrackingEvent { 159 class InspectorPaintInvalidationTrackingEvent {
117 public: 160 public:
118 static PassRefPtr<TraceEvent::ConvertableToTraceFormat> data(const LayoutObj ect* renderer, const LayoutObject* paintContainer); 161 static PassRefPtr<TraceEvent::ConvertableToTraceFormat> data(const LayoutObj ect* renderer, const LayoutObject* paintContainer);
119 }; 162 };
120 163
121 class InspectorSendRequestEvent { 164 class InspectorSendRequestEvent {
122 public: 165 public:
123 static PassRefPtr<TraceEvent::ConvertableToTraceFormat> data(unsigned long i dentifier, LocalFrame*, const ResourceRequest&); 166 static PassRefPtr<TraceEvent::ConvertableToTraceFormat> data(unsigned long i dentifier, LocalFrame*, const ResourceRequest&);
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
294 337
295 class InspectorAnimationStateEvent { 338 class InspectorAnimationStateEvent {
296 public: 339 public:
297 static PassRefPtr<TraceEvent::ConvertableToTraceFormat> data(const Animation Player&); 340 static PassRefPtr<TraceEvent::ConvertableToTraceFormat> data(const Animation Player&);
298 }; 341 };
299 342
300 } // namespace blink 343 } // namespace blink
301 344
302 345
303 #endif // !defined(InspectorTraceEvents_h) 346 #endif // !defined(InspectorTraceEvents_h)
OLDNEW
« no previous file with comments | « Source/core/html/shadow/SliderThumbElement.cpp ('k') | Source/core/inspector/InspectorTraceEvents.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698