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

Side by Side Diff: third_party/WebKit/Source/core/paint/PaintInvalidator.cpp

Issue 2678263002: Plumb border radius through when computing clip visual rects. (Closed)
Patch Set: none Created 3 years, 10 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/paint/PaintLayerClipper.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 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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/paint/PaintInvalidator.h" 5 #include "core/paint/PaintInvalidator.h"
6 6
7 #include "core/editing/FrameSelection.h" 7 #include "core/editing/FrameSelection.h"
8 #include "core/frame/FrameView.h" 8 #include "core/frame/FrameView.h"
9 #include "core/frame/LocalFrame.h" 9 #include "core/frame/LocalFrame.h"
10 #include "core/frame/Settings.h" 10 #include "core/frame/Settings.h"
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 ->contentsProperties(); 110 ->contentsProperties();
111 if (context.treeBuilderContext.current.transform == 111 if (context.treeBuilderContext.current.transform ==
112 containerContentsProperties->transform() && 112 containerContentsProperties->transform() &&
113 context.treeBuilderContext.current.clip == 113 context.treeBuilderContext.current.clip ==
114 containerContentsProperties->clip()) { 114 containerContentsProperties->clip()) {
115 result = LayoutRect(rect); 115 result = LayoutRect(rect);
116 } else { 116 } else {
117 PropertyTreeState currentTreeState( 117 PropertyTreeState currentTreeState(
118 context.treeBuilderContext.current.transform, 118 context.treeBuilderContext.current.transform,
119 context.treeBuilderContext.current.clip, nullptr); 119 context.treeBuilderContext.current.clip, nullptr);
120 result = LayoutRect(geometryMapper.sourceToDestinationVisualRect( 120 result = LayoutRect(
121 FloatRect(rect), currentTreeState, *containerContentsProperties)); 121 geometryMapper
122 .sourceToDestinationVisualRect(FloatRect(rect), currentTreeState,
123 *containerContentsProperties)
124 .rect());
122 } 125 }
123 126
124 // Convert the result to the container's contents space. 127 // Convert the result to the container's contents space.
125 result.moveBy(-context.paintInvalidationContainer->paintOffset()); 128 result.moveBy(-context.paintInvalidationContainer->paintOffset());
126 } 129 }
127 130
128 object.adjustVisualRectForRasterEffects(result); 131 object.adjustVisualRectForRasterEffects(result);
129 132
130 PaintLayer::mapRectInPaintInvalidationContainerToBacking( 133 PaintLayer::mapRectInPaintInvalidationContainerToBacking(
131 *context.paintInvalidationContainer, result); 134 *context.paintInvalidationContainer, result);
(...skipping 313 matching lines...) Expand 10 before | Expand all | Expand 10 after
445 PaintInvalidatorContext::ForcedSubtreeInvalidationRectUpdate; 448 PaintInvalidatorContext::ForcedSubtreeInvalidationRectUpdate;
446 } 449 }
447 450
448 void PaintInvalidator::processPendingDelayedPaintInvalidations() { 451 void PaintInvalidator::processPendingDelayedPaintInvalidations() {
449 for (auto target : m_pendingDelayedPaintInvalidations) 452 for (auto target : m_pendingDelayedPaintInvalidations)
450 target->getMutableForPainting().setShouldDoFullPaintInvalidation( 453 target->getMutableForPainting().setShouldDoFullPaintInvalidation(
451 PaintInvalidationDelayedFull); 454 PaintInvalidationDelayedFull);
452 } 455 }
453 456
454 } // namespace blink 457 } // namespace blink
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/paint/PaintLayerClipper.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698