OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) | 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) | 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) |
6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r
ights reserved. | 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r
ights reserved. |
7 * Copyright (C) 2009 Google Inc. All rights reserved. | 7 * Copyright (C) 2009 Google Inc. All rights reserved. |
8 * | 8 * |
9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
(...skipping 14 matching lines...) Expand all Loading... |
25 | 25 |
26 #ifndef RenderObject_h | 26 #ifndef RenderObject_h |
27 #define RenderObject_h | 27 #define RenderObject_h |
28 | 28 |
29 #include "core/dom/Document.h" | 29 #include "core/dom/Document.h" |
30 #include "core/dom/DocumentLifecycle.h" | 30 #include "core/dom/DocumentLifecycle.h" |
31 #include "core/dom/Element.h" | 31 #include "core/dom/Element.h" |
32 #include "core/editing/TextAffinity.h" | 32 #include "core/editing/TextAffinity.h" |
33 #include "core/fetch/ImageResourceClient.h" | 33 #include "core/fetch/ImageResourceClient.h" |
34 #include "core/html/HTMLElement.h" | 34 #include "core/html/HTMLElement.h" |
| 35 #include "core/inspector/InspectorTraceEvents.h" |
35 #include "core/rendering/HitTestRequest.h" | 36 #include "core/rendering/HitTestRequest.h" |
36 #include "core/rendering/PaintInvalidationState.h" | 37 #include "core/rendering/PaintInvalidationState.h" |
37 #include "core/rendering/PaintPhase.h" | 38 #include "core/rendering/PaintPhase.h" |
38 #include "core/rendering/RenderObjectChildList.h" | 39 #include "core/rendering/RenderObjectChildList.h" |
39 #include "core/rendering/ScrollAlignment.h" | 40 #include "core/rendering/ScrollAlignment.h" |
40 #include "core/rendering/SubtreeLayoutScope.h" | 41 #include "core/rendering/SubtreeLayoutScope.h" |
41 #include "core/rendering/compositing/CompositingState.h" | 42 #include "core/rendering/compositing/CompositingState.h" |
42 #include "core/rendering/compositing/CompositingTriggers.h" | 43 #include "core/rendering/compositing/CompositingTriggers.h" |
43 #include "core/rendering/style/RenderStyle.h" | 44 #include "core/rendering/style/RenderStyle.h" |
44 #include "core/rendering/style/StyleInheritedData.h" | 45 #include "core/rendering/style/StyleInheritedData.h" |
(...skipping 1367 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1412 } | 1413 } |
1413 | 1414 |
1414 // setNeedsLayout() won't cause full paint invalidations as | 1415 // setNeedsLayout() won't cause full paint invalidations as |
1415 // setNeedsLayoutAndFullPaintInvalidation() does. Otherwise the two methods are
identical. | 1416 // setNeedsLayoutAndFullPaintInvalidation() does. Otherwise the two methods are
identical. |
1416 inline void RenderObject::setNeedsLayout(MarkingBehavior markParents, SubtreeLay
outScope* layouter) | 1417 inline void RenderObject::setNeedsLayout(MarkingBehavior markParents, SubtreeLay
outScope* layouter) |
1417 { | 1418 { |
1418 ASSERT(!isSetNeedsLayoutForbidden()); | 1419 ASSERT(!isSetNeedsLayoutForbidden()); |
1419 bool alreadyNeededLayout = m_bitfields.selfNeedsLayout(); | 1420 bool alreadyNeededLayout = m_bitfields.selfNeedsLayout(); |
1420 setSelfNeedsLayout(true); | 1421 setSelfNeedsLayout(true); |
1421 if (!alreadyNeededLayout) { | 1422 if (!alreadyNeededLayout) { |
| 1423 TRACE_EVENT_INSTANT1( |
| 1424 TRACE_DISABLED_BY_DEFAULT("devtools.timeline.layoutInvalidationTrack
ing"), |
| 1425 "LayoutInvalidationTracking", |
| 1426 "data", |
| 1427 InspectorLayoutInvalidationTrackingEvent::data(this)); |
1422 if (markParents == MarkContainingBlockChain && (!layouter || layouter->r
oot() != this)) | 1428 if (markParents == MarkContainingBlockChain && (!layouter || layouter->r
oot() != this)) |
1423 markContainingBlocksForLayout(true, 0, layouter); | 1429 markContainingBlocksForLayout(true, 0, layouter); |
1424 } | 1430 } |
1425 } | 1431 } |
1426 | 1432 |
1427 inline void RenderObject::setNeedsLayoutAndFullPaintInvalidation(MarkingBehavior
markParents, SubtreeLayoutScope* layouter) | 1433 inline void RenderObject::setNeedsLayoutAndFullPaintInvalidation(MarkingBehavior
markParents, SubtreeLayoutScope* layouter) |
1428 { | 1434 { |
1429 setNeedsLayout(markParents, layouter); | 1435 setNeedsLayout(markParents, layouter); |
1430 setShouldDoFullPaintInvalidation(true); | 1436 setShouldDoFullPaintInvalidation(true); |
1431 } | 1437 } |
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1568 void showTree(const blink::RenderObject*); | 1574 void showTree(const blink::RenderObject*); |
1569 void showLineTree(const blink::RenderObject*); | 1575 void showLineTree(const blink::RenderObject*); |
1570 void showRenderTree(const blink::RenderObject* object1); | 1576 void showRenderTree(const blink::RenderObject* object1); |
1571 // We don't make object2 an optional parameter so that showRenderTree | 1577 // We don't make object2 an optional parameter so that showRenderTree |
1572 // can be called from gdb easily. | 1578 // can be called from gdb easily. |
1573 void showRenderTree(const blink::RenderObject* object1, const blink::RenderObjec
t* object2); | 1579 void showRenderTree(const blink::RenderObject* object1, const blink::RenderObjec
t* object2); |
1574 | 1580 |
1575 #endif | 1581 #endif |
1576 | 1582 |
1577 #endif // RenderObject_h | 1583 #endif // RenderObject_h |
OLD | NEW |