| 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 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 81 | 81 |
| 82 enum HitTestFilter { | 82 enum HitTestFilter { |
| 83 HitTestAll, | 83 HitTestAll, |
| 84 HitTestSelf, | 84 HitTestSelf, |
| 85 HitTestDescendants | 85 HitTestDescendants |
| 86 }; | 86 }; |
| 87 | 87 |
| 88 enum MarkingBehavior { | 88 enum MarkingBehavior { |
| 89 MarkOnlyThis, | 89 MarkOnlyThis, |
| 90 MarkContainerChain, | 90 MarkContainerChain, |
| 91 MarkContainerChainInLayout, | |
| 92 }; | 91 }; |
| 93 | 92 |
| 94 enum MapCoordinatesMode { | 93 enum MapCoordinatesMode { |
| 95 IsFixed = 1 << 0, | 94 IsFixed = 1 << 0, |
| 96 UseTransforms = 1 << 1, | 95 UseTransforms = 1 << 1, |
| 97 ApplyContainerFlip = 1 << 2, | 96 ApplyContainerFlip = 1 << 2, |
| 98 TraverseDocumentBoundaries = 1 << 3, | 97 TraverseDocumentBoundaries = 1 << 3, |
| 99 | 98 |
| 100 // Applies to LayoutView::mapLocalToAncestor() and LayoutView::mapToVisualRe
ctInAncestorSpace() | 99 // Applies to LayoutView::mapLocalToAncestor() and LayoutView::mapToVisualRe
ctInAncestorSpace() |
| 101 // only, to indicate the input point or rect is in frame coordinates instead
of frame contents | 100 // only, to indicate the input point or rect is in frame coordinates instead
of frame contents |
| (...skipping 1904 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2006 ASSERT(!isSetNeedsLayoutForbidden()); | 2005 ASSERT(!isSetNeedsLayoutForbidden()); |
| 2007 bool alreadyNeededLayout = m_bitfields.selfNeedsLayout(); | 2006 bool alreadyNeededLayout = m_bitfields.selfNeedsLayout(); |
| 2008 setSelfNeedsLayout(true); | 2007 setSelfNeedsLayout(true); |
| 2009 if (!alreadyNeededLayout) { | 2008 if (!alreadyNeededLayout) { |
| 2010 TRACE_EVENT_INSTANT1( | 2009 TRACE_EVENT_INSTANT1( |
| 2011 TRACE_DISABLED_BY_DEFAULT("devtools.timeline.invalidationTracking"), | 2010 TRACE_DISABLED_BY_DEFAULT("devtools.timeline.invalidationTracking"), |
| 2012 "LayoutInvalidationTracking", | 2011 "LayoutInvalidationTracking", |
| 2013 TRACE_EVENT_SCOPE_THREAD, | 2012 TRACE_EVENT_SCOPE_THREAD, |
| 2014 "data", | 2013 "data", |
| 2015 InspectorLayoutInvalidationTrackingEvent::data(this, reason)); | 2014 InspectorLayoutInvalidationTrackingEvent::data(this, reason)); |
| 2016 if (markParents != MarkOnlyThis && (!layouter || layouter->root() != thi
s)) | 2015 if (markParents == MarkContainerChain && (!layouter || layouter->root()
!= this)) |
| 2017 markContainerChainForLayout(!layouter && markParents == MarkContaine
rChain, layouter); | 2016 markContainerChainForLayout(!layouter, layouter); |
| 2018 } | 2017 } |
| 2019 } | 2018 } |
| 2020 | 2019 |
| 2021 inline void LayoutObject::setNeedsLayoutAndFullPaintInvalidation(LayoutInvalidat
ionReasonForTracing reason, MarkingBehavior markParents, SubtreeLayoutScope* lay
outer) | 2020 inline void LayoutObject::setNeedsLayoutAndFullPaintInvalidation(LayoutInvalidat
ionReasonForTracing reason, MarkingBehavior markParents, SubtreeLayoutScope* lay
outer) |
| 2022 { | 2021 { |
| 2023 setNeedsLayout(reason, markParents, layouter); | 2022 setNeedsLayout(reason, markParents, layouter); |
| 2024 setShouldDoFullPaintInvalidation(); | 2023 setShouldDoFullPaintInvalidation(); |
| 2025 } | 2024 } |
| 2026 | 2025 |
| 2027 inline void LayoutObject::clearNeedsLayout() | 2026 inline void LayoutObject::clearNeedsLayout() |
| (...skipping 15 matching lines...) Expand all Loading... |
| 2043 checkBlockPositionedObjectsNeedLayout(); | 2042 checkBlockPositionedObjectsNeedLayout(); |
| 2044 #endif | 2043 #endif |
| 2045 } | 2044 } |
| 2046 | 2045 |
| 2047 inline void LayoutObject::setChildNeedsLayout(MarkingBehavior markParents, Subtr
eeLayoutScope* layouter) | 2046 inline void LayoutObject::setChildNeedsLayout(MarkingBehavior markParents, Subtr
eeLayoutScope* layouter) |
| 2048 { | 2047 { |
| 2049 ASSERT(!isSetNeedsLayoutForbidden()); | 2048 ASSERT(!isSetNeedsLayoutForbidden()); |
| 2050 bool alreadyNeededLayout = normalChildNeedsLayout(); | 2049 bool alreadyNeededLayout = normalChildNeedsLayout(); |
| 2051 setNormalChildNeedsLayout(true); | 2050 setNormalChildNeedsLayout(true); |
| 2052 // FIXME: Replace MarkOnlyThis with the SubtreeLayoutScope code path and rem
ove the MarkingBehavior argument entirely. | 2051 // FIXME: Replace MarkOnlyThis with the SubtreeLayoutScope code path and rem
ove the MarkingBehavior argument entirely. |
| 2053 if (!alreadyNeededLayout && markParents != MarkOnlyThis && (!layouter || lay
outer->root() != this)) | 2052 if (!alreadyNeededLayout && markParents == MarkContainerChain && (!layouter
|| layouter->root() != this)) |
| 2054 markContainerChainForLayout(!layouter && markParents == MarkContainerCha
in, layouter); | 2053 markContainerChainForLayout(!layouter, layouter); |
| 2055 } | 2054 } |
| 2056 | 2055 |
| 2057 inline void LayoutObject::setNeedsPositionedMovementLayout() | 2056 inline void LayoutObject::setNeedsPositionedMovementLayout() |
| 2058 { | 2057 { |
| 2059 bool alreadyNeededLayout = needsPositionedMovementLayout(); | 2058 bool alreadyNeededLayout = needsPositionedMovementLayout(); |
| 2060 setNeedsPositionedMovementLayout(true); | 2059 setNeedsPositionedMovementLayout(true); |
| 2061 ASSERT(!isSetNeedsLayoutForbidden()); | 2060 ASSERT(!isSetNeedsLayoutForbidden()); |
| 2062 if (!alreadyNeededLayout) | 2061 if (!alreadyNeededLayout) |
| 2063 markContainerChainForLayout(); | 2062 markContainerChainForLayout(); |
| 2064 } | 2063 } |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2171 void showTree(const blink::LayoutObject*); | 2170 void showTree(const blink::LayoutObject*); |
| 2172 void showLineTree(const blink::LayoutObject*); | 2171 void showLineTree(const blink::LayoutObject*); |
| 2173 void showLayoutTree(const blink::LayoutObject* object1); | 2172 void showLayoutTree(const blink::LayoutObject* object1); |
| 2174 // We don't make object2 an optional parameter so that showLayoutTree | 2173 // We don't make object2 an optional parameter so that showLayoutTree |
| 2175 // can be called from gdb easily. | 2174 // can be called from gdb easily. |
| 2176 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec
t* object2); | 2175 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec
t* object2); |
| 2177 | 2176 |
| 2178 #endif | 2177 #endif |
| 2179 | 2178 |
| 2180 #endif // LayoutObject_h | 2179 #endif // LayoutObject_h |
| OLD | NEW |