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

Side by Side Diff: third_party/WebKit/Source/core/layout/LayoutMultiColumnSpannerPlaceholder.cpp

Issue 1813383002: Move all fast-path paint invalidation mapping into PaintInvalidationState (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Disable fast-path/slow-path comparison because of saturated operations of LayoutUnit Created 4 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
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 #include "core/layout/LayoutMultiColumnSpannerPlaceholder.h" 5 #include "core/layout/LayoutMultiColumnSpannerPlaceholder.h"
6 6
7 namespace blink { 7 namespace blink {
8 8
9 static void copyMarginProperties(ComputedStyle& placeholderStyle, const Computed Style& spannerStyle) 9 static void copyMarginProperties(ComputedStyle& placeholderStyle, const Computed Style& spannerStyle)
10 { 10 {
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
112 } 112 }
113 113
114 void LayoutMultiColumnSpannerPlaceholder::computeLogicalHeight(LayoutUnit, Layou tUnit logicalTop, LogicalExtentComputedValues& computedValues) const 114 void LayoutMultiColumnSpannerPlaceholder::computeLogicalHeight(LayoutUnit, Layou tUnit logicalTop, LogicalExtentComputedValues& computedValues) const
115 { 115 {
116 computedValues.m_extent = m_layoutObjectInFlowThread->logicalHeight(); 116 computedValues.m_extent = m_layoutObjectInFlowThread->logicalHeight();
117 computedValues.m_position = logicalTop; 117 computedValues.m_position = logicalTop;
118 computedValues.m_margins.m_before = marginBefore(); 118 computedValues.m_margins.m_before = marginBefore();
119 computedValues.m_margins.m_after = marginAfter(); 119 computedValues.m_margins.m_after = marginAfter();
120 } 120 }
121 121
122 void LayoutMultiColumnSpannerPlaceholder::invalidateTreeIfNeeded(const PaintInva lidationState& paintInvalidationState) 122 void LayoutMultiColumnSpannerPlaceholder::invalidatePaintOfSubtreesIfNeeded(cons t PaintInvalidationState& childPaintInvalidationState)
123 { 123 {
124 PaintInvalidationState newPaintInvalidationState(paintInvalidationState, *th is); 124 m_layoutObjectInFlowThread->invalidateTreeIfNeeded(childPaintInvalidationSta te);
125 newPaintInvalidationState.updatePaintOffsetAndClipForChildren(); 125 LayoutBox::invalidatePaintOfSubtreesIfNeeded(childPaintInvalidationState);
126 m_layoutObjectInFlowThread->invalidateTreeIfNeeded(newPaintInvalidationState );
127 LayoutBox::invalidateTreeIfNeeded(paintInvalidationState);
128 } 126 }
129 127
130 void LayoutMultiColumnSpannerPlaceholder::paint(const PaintInfo& paintInfo, cons t LayoutPoint& paintOffset) const 128 void LayoutMultiColumnSpannerPlaceholder::paint(const PaintInfo& paintInfo, cons t LayoutPoint& paintOffset) const
131 { 129 {
132 if (!m_layoutObjectInFlowThread->hasSelfPaintingLayer()) 130 if (!m_layoutObjectInFlowThread->hasSelfPaintingLayer())
133 m_layoutObjectInFlowThread->paint(paintInfo, paintOffset); 131 m_layoutObjectInFlowThread->paint(paintInfo, paintOffset);
134 } 132 }
135 133
136 bool LayoutMultiColumnSpannerPlaceholder::nodeAtPoint(HitTestResult& result, con st HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, H itTestAction action) 134 bool LayoutMultiColumnSpannerPlaceholder::nodeAtPoint(HitTestResult& result, con st HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, H itTestAction action)
137 { 135 {
138 return !m_layoutObjectInFlowThread->hasSelfPaintingLayer() && m_layoutObject InFlowThread->nodeAtPoint(result, locationInContainer, accumulatedOffset, action ); 136 return !m_layoutObjectInFlowThread->hasSelfPaintingLayer() && m_layoutObject InFlowThread->nodeAtPoint(result, locationInContainer, accumulatedOffset, action );
139 } 137 }
140 138
141 } // namespace blink 139 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698