diff options
| author | 2015-10-28 20:35:36 +0000 | |
|---|---|---|
| committer | 2015-10-28 20:35:36 +0000 | |
| commit | d8f904f256b82e48e9a85561eb96e15399b0b2d9 (patch) | |
| tree | 6f418fc8ec95ab0112a39adbd7fa3bfff0d2ca4d /libs | |
| parent | 550780745fa28ae9a87d02331841ca5ce4f9c763 (diff) | |
Revert "Merge six commits from master-skia to master"
This reverts commit 550780745fa28ae9a87d02331841ca5ce4f9c763.
Change-Id: Ic71eccea454b26261fe6e9a9a7a24eff56396989
Diffstat (limited to 'libs')
| -rw-r--r-- | libs/hwui/Android.mk | 1 | ||||
| -rw-r--r-- | libs/hwui/DisplayListCanvas.cpp | 2 | ||||
| -rw-r--r-- | libs/hwui/SkiaCanvas.cpp | 16 | ||||
| -rw-r--r-- | libs/hwui/SkiaCanvasProxy.cpp | 2 | ||||
| -rw-r--r-- | libs/hwui/SkiaCanvasProxy.h | 2 | ||||
| -rw-r--r-- | libs/hwui/SkiaShader.cpp | 4 | ||||
| -rw-r--r-- | libs/hwui/utils/NinePatchImpl.cpp | 8 |
7 files changed, 18 insertions, 17 deletions
diff --git a/libs/hwui/Android.mk b/libs/hwui/Android.mk index f14e444fd7b1..4385e7012f54 100644 --- a/libs/hwui/Android.mk +++ b/libs/hwui/Android.mk @@ -113,7 +113,6 @@ $(call local-generated-sources-dir)/proto/$(LOCAL_PATH) endef hwui_c_includes += \ - external/skia/include/private \ external/skia/src/core hwui_shared_libraries := \ diff --git a/libs/hwui/DisplayListCanvas.cpp b/libs/hwui/DisplayListCanvas.cpp index f5e57355138c..bad397219398 100644 --- a/libs/hwui/DisplayListCanvas.cpp +++ b/libs/hwui/DisplayListCanvas.cpp @@ -584,7 +584,7 @@ void DisplayListCanvas::refBitmapsInShader(const SkShader* shader) { // it to the bitmap pile SkBitmap bitmap; SkShader::TileMode xy[2]; - if (shader->isABitmap(&bitmap, nullptr, xy)) { + if (shader->asABitmap(&bitmap, nullptr, xy) == SkShader::kDefault_BitmapType) { refBitmap(bitmap); return; } diff --git a/libs/hwui/SkiaCanvas.cpp b/libs/hwui/SkiaCanvas.cpp index a8f8134170d3..36633b5205a1 100644 --- a/libs/hwui/SkiaCanvas.cpp +++ b/libs/hwui/SkiaCanvas.cpp @@ -194,13 +194,15 @@ private: void SkiaCanvas::setBitmap(const SkBitmap& bitmap) { SkCanvas* newCanvas = new SkCanvas(bitmap); + SkASSERT(newCanvas); if (!bitmap.isNull()) { // Copy the canvas matrix & clip state. newCanvas->setMatrix(mCanvas->getTotalMatrix()); - - ClipCopier copier(newCanvas); - mCanvas->replayClips(&copier); + if (NULL != mCanvas->getDevice() && NULL != newCanvas->getDevice()) { + ClipCopier copier(newCanvas); + mCanvas->replayClips(&copier); + } } // unrefs the existing canvas @@ -215,15 +217,15 @@ void SkiaCanvas::setBitmap(const SkBitmap& bitmap) { // ---------------------------------------------------------------------------- bool SkiaCanvas::isOpaque() { - return mCanvas->imageInfo().isOpaque(); + return mCanvas->getDevice()->accessBitmap(false).isOpaque(); } int SkiaCanvas::width() { - return mCanvas->imageInfo().width(); + return mCanvas->getBaseLayerSize().width(); } int SkiaCanvas::height() { - return mCanvas->imageInfo().height(); + return mCanvas->getBaseLayerSize().height(); } // ---------------------------------------------------------------------------- @@ -579,7 +581,7 @@ void SkiaCanvas::drawBitmap(const SkBitmap& bitmap, float srcLeft, float srcTop, float dstRight, float dstBottom, const SkPaint* paint) { SkRect srcRect = SkRect::MakeLTRB(srcLeft, srcTop, srcRight, srcBottom); SkRect dstRect = SkRect::MakeLTRB(dstLeft, dstTop, dstRight, dstBottom); - mCanvas->drawBitmapRect(bitmap, srcRect, dstRect, paint); + mCanvas->drawBitmapRectToRect(bitmap, &srcRect, dstRect, paint); } void SkiaCanvas::drawBitmapMesh(const SkBitmap& bitmap, int meshWidth, int meshHeight, diff --git a/libs/hwui/SkiaCanvasProxy.cpp b/libs/hwui/SkiaCanvasProxy.cpp index 2d5f70f6a70c..c3f5eb27e236 100644 --- a/libs/hwui/SkiaCanvasProxy.cpp +++ b/libs/hwui/SkiaCanvasProxy.cpp @@ -125,7 +125,7 @@ void SkiaCanvasProxy::onDrawBitmap(const SkBitmap& bitmap, SkScalar left, SkScal } void SkiaCanvasProxy::onDrawBitmapRect(const SkBitmap& bitmap, const SkRect* srcPtr, - const SkRect& dst, const SkPaint* paint, SrcRectConstraint) { + const SkRect& dst, const SkPaint* paint, DrawBitmapRectFlags) { SkRect src = (srcPtr) ? *srcPtr : SkRect::MakeWH(bitmap.width(), bitmap.height()); // TODO: if bitmap is a subset, do we need to add pixelRefOrigin to src? mCanvas->drawBitmap(bitmap, src.fLeft, src.fTop, src.fRight, src.fBottom, diff --git a/libs/hwui/SkiaCanvasProxy.h b/libs/hwui/SkiaCanvasProxy.h index 2fe4327b9539..0de965094e64 100644 --- a/libs/hwui/SkiaCanvasProxy.h +++ b/libs/hwui/SkiaCanvasProxy.h @@ -63,7 +63,7 @@ protected: virtual void onDrawBitmap(const SkBitmap&, SkScalar left, SkScalar top, const SkPaint*) override; virtual void onDrawBitmapRect(const SkBitmap&, const SkRect* src, const SkRect& dst, - const SkPaint* paint, SrcRectConstraint) override; + const SkPaint* paint, DrawBitmapRectFlags flags) override; virtual void onDrawBitmapNine(const SkBitmap& bitmap, const SkIRect& center, const SkRect& dst, const SkPaint*) override; virtual void onDrawSprite(const SkBitmap&, int left, int top, diff --git a/libs/hwui/SkiaShader.cpp b/libs/hwui/SkiaShader.cpp index 83652c6de21f..6c105cfc7b00 100644 --- a/libs/hwui/SkiaShader.cpp +++ b/libs/hwui/SkiaShader.cpp @@ -204,7 +204,7 @@ bool tryStoreBitmap(Caches& caches, const SkShader& shader, const Matrix4& model SkiaShaderData::BitmapShaderData* outData) { SkBitmap bitmap; SkShader::TileMode xy[2]; - if (!shader.isABitmap(&bitmap, nullptr, xy)) { + if (shader.asABitmap(&bitmap, nullptr, xy) != SkShader::kDefault_BitmapType) { return false; } @@ -272,7 +272,7 @@ SkiaShaderType getComposeSubType(const SkShader& shader) { } // The shader is not a gradient. Check for a bitmap shader. - if (shader.isABitmap()) { + if (shader.asABitmap(nullptr, nullptr, nullptr) == SkShader::kDefault_BitmapType) { return kBitmap_SkiaShaderType; } return kNone_SkiaShaderType; diff --git a/libs/hwui/utils/NinePatchImpl.cpp b/libs/hwui/utils/NinePatchImpl.cpp index 9af99111129d..f51f5df2402c 100644 --- a/libs/hwui/utils/NinePatchImpl.cpp +++ b/libs/hwui/utils/NinePatchImpl.cpp @@ -61,7 +61,7 @@ static SkColor modAlpha(SkColor c, int alpha) { return SkColorSetA(c, a); } -static void drawStretchyPatch(SkCanvas* canvas, SkIRect& isrc, const SkRect& dst, +static void drawStretchyPatch(SkCanvas* canvas, SkIRect& src, const SkRect& dst, const SkBitmap& bitmap, const SkPaint& paint, SkColor initColor, uint32_t colorHint, bool hasXfer) { @@ -69,9 +69,9 @@ static void drawStretchyPatch(SkCanvas* canvas, SkIRect& isrc, const SkRect& dst ((SkPaint*)&paint)->setColor(modAlpha(colorHint, paint.getAlpha())); canvas->drawRect(dst, paint); ((SkPaint*)&paint)->setColor(initColor); - } else if (isrc.width() == 1 && isrc.height() == 1) { + } else if (src.width() == 1 && src.height() == 1) { SkColor c; - if (!getColor(bitmap, isrc.fLeft, isrc.fTop, &c)) { + if (!getColor(bitmap, src.fLeft, src.fTop, &c)) { goto SLOW_CASE; } if (0 != c || hasXfer) { @@ -82,7 +82,7 @@ static void drawStretchyPatch(SkCanvas* canvas, SkIRect& isrc, const SkRect& dst } } else { SLOW_CASE: - canvas->drawBitmapRect(bitmap, SkRect::Make(isrc), dst, &paint); + canvas->drawBitmapRect(bitmap, &src, dst, &paint); } } |