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

Side by Side Diff: third_party/WebKit/Source/core/layout/LayoutObject.h

Issue 1934233002: Cleanup partial changes to prevent scheduleRelayout() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 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
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/layout/TextAutosizer.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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
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
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
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/layout/TextAutosizer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698