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

Side by Side Diff: src/effects/SkDropShadowImageFilter.cpp

Issue 2396953002: Revert[8] "replace SkXfermode obj with SkBlendMode enum in paints" (Closed)
Patch Set: add tmp virtual to unroll legacy arithmodes Created 4 years, 2 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 | « src/effects/SkDisplacementMapEffect.cpp ('k') | src/effects/SkImageSource.cpp » ('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 2013 Google Inc. 2 * Copyright 2013 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "SkDropShadowImageFilter.h" 8 #include "SkDropShadowImageFilter.h"
9 9
10 #include "SkBlurImageFilter.h" 10 #include "SkBlurImageFilter.h"
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
88 canvas->clear(0x0); 88 canvas->clear(0x0);
89 89
90 SkVector sigma = SkVector::Make(fSigmaX, fSigmaY); 90 SkVector sigma = SkVector::Make(fSigmaX, fSigmaY);
91 ctx.ctm().mapVectors(&sigma, 1); 91 ctx.ctm().mapVectors(&sigma, 1);
92 sigma.fX = SkMaxScalar(0, sigma.fX); 92 sigma.fX = SkMaxScalar(0, sigma.fX);
93 sigma.fY = SkMaxScalar(0, sigma.fY); 93 sigma.fY = SkMaxScalar(0, sigma.fY);
94 94
95 SkPaint paint; 95 SkPaint paint;
96 paint.setImageFilter(SkBlurImageFilter::Make(sigma.fX, sigma.fY, nullptr)); 96 paint.setImageFilter(SkBlurImageFilter::Make(sigma.fX, sigma.fY, nullptr));
97 paint.setColorFilter(SkColorFilter::MakeModeFilter(fColor, SkXfermode::kSrcI n_Mode)); 97 paint.setColorFilter(SkColorFilter::MakeModeFilter(fColor, SkXfermode::kSrcI n_Mode));
98 paint.setXfermodeMode(SkXfermode::kSrcOver_Mode);
99 98
100 SkVector offsetVec = SkVector::Make(fDx, fDy); 99 SkVector offsetVec = SkVector::Make(fDx, fDy);
101 ctx.ctm().mapVectors(&offsetVec, 1); 100 ctx.ctm().mapVectors(&offsetVec, 1);
102 101
103 canvas->translate(SkIntToScalar(inputOffset.fX - bounds.fLeft), 102 canvas->translate(SkIntToScalar(inputOffset.fX - bounds.fLeft),
104 SkIntToScalar(inputOffset.fY - bounds.fTop)); 103 SkIntToScalar(inputOffset.fY - bounds.fTop));
105 input->draw(canvas, offsetVec.fX, offsetVec.fY, &paint); 104 input->draw(canvas, offsetVec.fX, offsetVec.fY, &paint);
106 105
107 if (fShadowMode == kDrawShadowAndForeground_ShadowMode) { 106 if (fShadowMode == kDrawShadowAndForeground_ShadowMode) {
108 input->draw(canvas, 0, 0, nullptr); 107 input->draw(canvas, 0, 0, nullptr);
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 "kDrawShadowAndForeground", "kDrawShadowOnly" 161 "kDrawShadowAndForeground", "kDrawShadowOnly"
163 }; 162 };
164 163
165 static_assert(kShadowModeCount == SK_ARRAY_COUNT(gModeStrings), "enum_mismat ch"); 164 static_assert(kShadowModeCount == SK_ARRAY_COUNT(gModeStrings), "enum_mismat ch");
166 165
167 str->appendf(" mode: %s", gModeStrings[fShadowMode]); 166 str->appendf(" mode: %s", gModeStrings[fShadowMode]);
168 167
169 str->append(")"); 168 str->append(")");
170 } 169 }
171 #endif 170 #endif
OLDNEW
« no previous file with comments | « src/effects/SkDisplacementMapEffect.cpp ('k') | src/effects/SkImageSource.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698