Revert[4] of "stop using drawSprite (at least w/ no filters) as it is going away"
authorreed <reed@google.com>
Wed, 4 Nov 2015 16:34:07 +0000 (08:34 -0800)
committerCommit bot <commit-bot@chromium.org>
Wed, 4 Nov 2015 16:34:07 +0000 (08:34 -0800)
This reverts commit 67b8b5e67a427382fed8c5d8b3c70a21ed2492c6.

BUG=skia:
TBR=

Previous revert was due to faulty unittest (now fixed) -- unrelated to this CL.

Review URL: https://codereview.chromium.org/1422703009

samplecode/SampleAll.cpp
src/effects/SkColorFilterImageFilter.cpp
src/effects/SkMergeImageFilter.cpp
src/gpu/GrRecordReplaceDraw.cpp
src/images/SkImageDecoder.cpp

index 628504d..b5a0fe5 100644 (file)
@@ -440,14 +440,10 @@ protected:
         canvas->drawPath(path, paint);
 
         paint.setShader(nullptr);
-        // bitmap, sprite
+        // bitmap
         canvas->translate(SkIntToScalar(50), 0);
         paint.setStyle(SkPaint::kFill_Style);
         canvas->drawBitmap(fBug, left, top, &paint);
-        canvas->translate(SkIntToScalar(30), 0);
-        canvas->drawSprite(fTb,
-            SkScalarRoundToInt(canvas->getTotalMatrix().getTranslateX()),
-            spriteOffset + 10, &paint);
 
         canvas->translate(-SkIntToScalar(30), SkIntToScalar(30));
         paint.setShader(shaderTest())->unref(); // test compose shader
index acdb6ab..8d394aa 100644 (file)
@@ -79,7 +79,8 @@ bool SkColorFilterImageFilter::onFilterImage(Proxy* proxy, const SkBitmap& sourc
 
     paint.setXfermodeMode(SkXfermode::kSrc_Mode);
     paint.setColorFilter(fColorFilter);
-    canvas.drawSprite(src, srcOffset.fX - bounds.fLeft, srcOffset.fY - bounds.fTop, &paint);
+    canvas.drawBitmap(src, SkIntToScalar(srcOffset.fX - bounds.fLeft),
+                           SkIntToScalar(srcOffset.fY - bounds.fTop), &paint);
 
     *result = device.get()->accessBitmap(false);
     offset->fX = bounds.fLeft;
index e999918..d6f0eaa 100755 (executable)
@@ -91,7 +91,7 @@ bool SkMergeImageFilter::onFilterImage(Proxy* proxy, const SkBitmap& src,
         } else {
             paint.setXfermode(nullptr);
         }
-        canvas.drawSprite(input, pos.x() - x0, pos.y() - y0, &paint);
+        canvas.drawBitmap(input, SkIntToScalar(pos.x() - x0), SkIntToScalar(pos.y() - y0), &paint);
         didProduceResult = true;
     }
 
index bca9255..28f27df 100644 (file)
@@ -35,22 +35,22 @@ static inline void draw_replacement_bitmap(GrCachedLayer* layer, SkCanvas* canva
                  !layer->isAtlased() ? layer->rect().height() : layer->texture()->height(),
                  &bm);
 
+    canvas->save();
+    canvas->setMatrix(SkMatrix::I());
     if (layer->isAtlased()) {
         const SkRect src = SkRect::Make(layer->rect());
         const SkRect dst = SkRect::Make(layer->srcIR());
 
         SkASSERT(layer->offset().isZero());
 
-        canvas->save();
-        canvas->setMatrix(SkMatrix::I());
         canvas->drawBitmapRect(bm, src, dst, layer->paint(), SkCanvas::kStrict_SrcRectConstraint);
-        canvas->restore();
     } else {
-        canvas->drawSprite(bm,
-                           layer->srcIR().fLeft + layer->offset().fX,
-                           layer->srcIR().fTop + layer->offset().fY,
+        canvas->drawBitmap(bm,
+                           SkIntToScalar(layer->srcIR().fLeft + layer->offset().fX),
+                           SkIntToScalar(layer->srcIR().fTop + layer->offset().fY),
                            layer->paint());
     }
+    canvas->restore();
 }
 
 // Used by GrRecordReplaceDraw. It intercepts nested drawPicture calls and
index daeee9f..60cc44c 100644 (file)
@@ -206,8 +206,8 @@ bool SkImageDecoder::cropBitmap(SkBitmap *dst, SkBitmap *src, int sampleSize,
     paint.setXfermodeMode(SkXfermode::kSrc_Mode);
 
     SkCanvas canvas(*dst);
-    canvas.drawSprite(*src, (srcX - dstX) / sampleSize,
-                            (srcY - dstY) / sampleSize,
+    canvas.drawBitmap(*src, SkIntToScalar((srcX - dstX) / sampleSize),
+                            SkIntToScalar((srcY - dstY) / sampleSize),
                             &paint);
     return true;
 }