[GPU] when paint has patheffect, it should fallback to path render
Comitted on behalf of Guanqun.Lu@gmail.com
THIS MAY CAUSE GM TO GO RED, WILL REBASELINE.
Review URL: http://codereview.appspot.com/5885057/
git-svn-id: http://skia.googlecode.com/svn/trunk@3487 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gm/patheffects.cpp b/gm/patheffects.cpp
index c606116..c4cb499 100644
--- a/gm/patheffects.cpp
+++ b/gm/patheffects.cpp
@@ -146,6 +146,16 @@
canvas->drawPath(path, paint);
canvas->translate(0, 160);
}
+
+ SkIRect rect = SkIRect::MakeXYWH(20, 20, 60, 60);
+ for (i = 0; i < SK_ARRAY_COUNT(gPE); i++) {
+ SkPaint p;
+ p.setAntiAlias(true);
+ p.setStyle(SkPaint::kFill_Style);
+ gPE[i](&p);
+ canvas->drawIRect(rect, p);
+ canvas->translate(75, 0);
+ }
}
private:
diff --git a/src/gpu/SkGpuDevice.cpp b/src/gpu/SkGpuDevice.cpp
index 0ac4ed5..703153b 100644
--- a/src/gpu/SkGpuDevice.cpp
+++ b/src/gpu/SkGpuDevice.cpp
@@ -674,8 +674,8 @@
*/
bool usePath = doStroke && width > 0 &&
paint.getStrokeJoin() != SkPaint::kMiter_Join;
- // another reason we might need to call drawPath...
- if (paint.getMaskFilter()) {
+ // another two reasons we might need to call drawPath...
+ if (paint.getMaskFilter() || paint.getPathEffect()) {
usePath = true;
}
// until we aa rotated rects...