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

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

Issue 1774943003: blink: Rename platform/ methods to prefix with get when they collide. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: clash-platform: rebase-yayyyyyyyy Created 4 years, 9 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/SVGClipPainter.h" 5 #include "core/paint/SVGClipPainter.h"
6 6
7 #include "core/dom/ElementTraversal.h" 7 #include "core/dom/ElementTraversal.h"
8 #include "core/layout/svg/LayoutSVGResourceClipper.h" 8 #include "core/layout/svg/LayoutSVGResourceClipper.h"
9 #include "core/layout/svg/SVGResources.h" 9 #include "core/layout/svg/SVGResources.h"
10 #include "core/layout/svg/SVGResourcesCache.h" 10 #include "core/layout/svg/SVGResourcesCache.h"
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 // userSpaceOnUse units (the zoom is accounted for objectBoundingBox-resolve d lengths). 49 // userSpaceOnUse units (the zoom is accounted for objectBoundingBox-resolve d lengths).
50 if (!target.isSVG() && m_clip.clipPathUnits() == SVGUnitTypes::SVG_UNIT_TYPE _USERSPACEONUSE) { 50 if (!target.isSVG() && m_clip.clipPathUnits() == SVGUnitTypes::SVG_UNIT_TYPE _USERSPACEONUSE) {
51 ASSERT(m_clip.style()); 51 ASSERT(m_clip.style());
52 animatedLocalTransform.scale(m_clip.style()->effectiveZoom()); 52 animatedLocalTransform.scale(m_clip.style()->effectiveZoom());
53 } 53 }
54 54
55 // First, try to apply the clip as a clipPath. 55 // First, try to apply the clip as a clipPath.
56 Path clipPath; 56 Path clipPath;
57 if (m_clip.asPath(animatedLocalTransform, targetBoundingBox, clipPath)) { 57 if (m_clip.asPath(animatedLocalTransform, targetBoundingBox, clipPath)) {
58 clipperState = ClipperAppliedPath; 58 clipperState = ClipperAppliedPath;
59 context.paintController().createAndAppend<BeginClipPathDisplayItem>(targ et, clipPath); 59 context.getPaintController().createAndAppend<BeginClipPathDisplayItem>(t arget, clipPath);
60 return true; 60 return true;
61 } 61 }
62 62
63 // Fall back to masking. 63 // Fall back to masking.
64 clipperState = ClipperAppliedMask; 64 clipperState = ClipperAppliedMask;
65 65
66 // Begin compositing the clip mask. 66 // Begin compositing the clip mask.
67 CompositingRecorder::beginCompositing(context, target, SkXfermode::kSrcOver_ Mode, 1, &paintInvalidationRect); 67 CompositingRecorder::beginCompositing(context, target, SkXfermode::kSrcOver_ Mode, 1, &paintInvalidationRect);
68 { 68 {
69 TransformRecorder recorder(context, target, animatedLocalTransform); 69 TransformRecorder recorder(context, target, animatedLocalTransform);
(...skipping 18 matching lines...) Expand all
88 CompositingRecorder::beginCompositing(context, target, SkXfermode::kSrcIn_Mo de, 1, &paintInvalidationRect); 88 CompositingRecorder::beginCompositing(context, target, SkXfermode::kSrcIn_Mo de, 1, &paintInvalidationRect);
89 89
90 return true; 90 return true;
91 } 91 }
92 92
93 void SVGClipPainter::finishEffect(const LayoutObject& target, GraphicsContext& c ontext, ClipperState& clipperState) 93 void SVGClipPainter::finishEffect(const LayoutObject& target, GraphicsContext& c ontext, ClipperState& clipperState)
94 { 94 {
95 switch (clipperState) { 95 switch (clipperState) {
96 case ClipperAppliedPath: 96 case ClipperAppliedPath:
97 // Path-only clipping, no layers to restore but we need to emit an end t o the clip path display item. 97 // Path-only clipping, no layers to restore but we need to emit an end t o the clip path display item.
98 context.paintController().endItem<EndClipPathDisplayItem>(target); 98 context.getPaintController().endItem<EndClipPathDisplayItem>(target);
99 break; 99 break;
100 case ClipperAppliedMask: 100 case ClipperAppliedMask:
101 // Transfer content -> clip mask (SrcIn) 101 // Transfer content -> clip mask (SrcIn)
102 CompositingRecorder::endCompositing(context, target); 102 CompositingRecorder::endCompositing(context, target);
103 103
104 // Transfer clip mask -> bg (SrcOver) 104 // Transfer clip mask -> bg (SrcOver)
105 CompositingRecorder::endCompositing(context, target); 105 CompositingRecorder::endCompositing(context, target);
106 break; 106 break;
107 default: 107 default:
108 ASSERT_NOT_REACHED(); 108 ASSERT_NOT_REACHED();
109 } 109 }
110 } 110 }
111 111
112 void SVGClipPainter::drawClipMaskContent(GraphicsContext& context, const LayoutO bject& layoutObject, const FloatRect& targetBoundingBox, const FloatRect& target PaintInvalidationRect) 112 void SVGClipPainter::drawClipMaskContent(GraphicsContext& context, const LayoutO bject& layoutObject, const FloatRect& targetBoundingBox, const FloatRect& target PaintInvalidationRect)
113 { 113 {
114 AffineTransform contentTransformation; 114 AffineTransform contentTransformation;
115 RefPtr<const SkPicture> clipContentPicture = m_clip.createContentPicture(con tentTransformation, targetBoundingBox, context); 115 RefPtr<const SkPicture> clipContentPicture = m_clip.createContentPicture(con tentTransformation, targetBoundingBox, context);
116 116
117 if (LayoutObjectDrawingRecorder::useCachedDrawingIfPossible(context, layoutO bject, DisplayItem::SVGClip)) 117 if (LayoutObjectDrawingRecorder::useCachedDrawingIfPossible(context, layoutO bject, DisplayItem::SVGClip))
118 return; 118 return;
119 119
120 LayoutObjectDrawingRecorder drawingRecorder(context, layoutObject, DisplayIt em::SVGClip, targetPaintInvalidationRect); 120 LayoutObjectDrawingRecorder drawingRecorder(context, layoutObject, DisplayIt em::SVGClip, targetPaintInvalidationRect);
121 context.save(); 121 context.save();
122 context.concatCTM(contentTransformation); 122 context.concatCTM(contentTransformation);
123 context.drawPicture(clipContentPicture.get()); 123 context.drawPicture(clipContentPicture.get());
124 context.restore(); 124 context.restore();
125 } 125 }
126 126
127 } // namespace blink 127 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698