| OLD | NEW |
| 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 "SkAlphaThresholdFilter.h" | 8 #include "SkAlphaThresholdFilter.h" |
| 9 | 9 |
| 10 #include "SkBitmap.h" | 10 #include "SkBitmap.h" |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 : INHERITED(&input, 1, cropRect) | 89 : INHERITED(&input, 1, cropRect) |
| 90 , fRegion(region) | 90 , fRegion(region) |
| 91 , fInnerThreshold(innerThreshold) | 91 , fInnerThreshold(innerThreshold) |
| 92 , fOuterThreshold(outerThreshold) { | 92 , fOuterThreshold(outerThreshold) { |
| 93 } | 93 } |
| 94 | 94 |
| 95 #if SK_SUPPORT_GPU | 95 #if SK_SUPPORT_GPU |
| 96 sk_sp<GrTexture> SkAlphaThresholdFilterImpl::createMaskTexture(GrContext* contex
t, | 96 sk_sp<GrTexture> SkAlphaThresholdFilterImpl::createMaskTexture(GrContext* contex
t, |
| 97 const SkMatrix& i
nMatrix, | 97 const SkMatrix& i
nMatrix, |
| 98 const SkIRect& bo
unds) const { | 98 const SkIRect& bo
unds) const { |
| 99 GrPixelConfig config; | |
| 100 if (context->caps()->isConfigRenderable(kAlpha_8_GrPixelConfig, false)) { | |
| 101 config = kAlpha_8_GrPixelConfig; | |
| 102 } else { | |
| 103 config = kRGBA_8888_GrPixelConfig; | |
| 104 } | |
| 105 | 99 |
| 106 sk_sp<GrDrawContext> drawContext(context->makeDrawContext(SkBackingFit::kApp
rox, | 100 sk_sp<GrDrawContext> drawContext(context->makeDrawContextWithFallback(SkBack
ingFit::kApprox, |
| 107 bounds.width(), bo
unds.height(), | 101 bounds
.width(), |
| 108 config, nullptr)); | 102 bounds
.height(), |
| 103 kAlpha
_8_GrPixelConfig, |
| 104 nullpt
r)); |
| 109 if (!drawContext) { | 105 if (!drawContext) { |
| 110 return nullptr; | 106 return nullptr; |
| 111 } | 107 } |
| 112 | 108 |
| 113 GrPaint grPaint; | 109 GrPaint grPaint; |
| 114 grPaint.setPorterDuffXPFactory(SkXfermode::kSrc_Mode); | 110 grPaint.setPorterDuffXPFactory(SkXfermode::kSrc_Mode); |
| 115 SkRegion::Iterator iter(fRegion); | 111 SkRegion::Iterator iter(fRegion); |
| 116 drawContext->clear(nullptr, 0x0, true); | 112 drawContext->clear(nullptr, 0x0, true); |
| 117 | 113 |
| 118 GrFixedClip clip(SkIRect::MakeWH(bounds.width(), bounds.height())); | 114 GrFixedClip clip(SkIRect::MakeWH(bounds.width(), bounds.height())); |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 260 dst); | 256 dst); |
| 261 } | 257 } |
| 262 | 258 |
| 263 #ifndef SK_IGNORE_TO_STRING | 259 #ifndef SK_IGNORE_TO_STRING |
| 264 void SkAlphaThresholdFilterImpl::toString(SkString* str) const { | 260 void SkAlphaThresholdFilterImpl::toString(SkString* str) const { |
| 265 str->appendf("SkAlphaThresholdImageFilter: ("); | 261 str->appendf("SkAlphaThresholdImageFilter: ("); |
| 266 str->appendf("inner: %f outer: %f", fInnerThreshold, fOuterThreshold); | 262 str->appendf("inner: %f outer: %f", fInnerThreshold, fOuterThreshold); |
| 267 str->append(")"); | 263 str->append(")"); |
| 268 } | 264 } |
| 269 #endif | 265 #endif |
| OLD | NEW |