Update Skia

This required a bunch of changes because of the new sk_sp type Skia has
introduced into their API.
This commit is contained in:
Adam Barth 2016-03-21 14:59:49 -07:00
parent be608ee2e9
commit ac113c2965
6 changed files with 10 additions and 10 deletions

2
DEPS
View File

@ -21,7 +21,7 @@ vars = {
'chromium_git': 'https://chromium.googlesource.com',
'mojo_sdk_revision': '5c0d7cd229bff7e2dfbcdea8310592ec90482919',
'base_revision': '6c89618151eb0e23d330778e6d6ea16fc6105010',
'skia_revision': '992ad363d7ca879cdb86f802b379f06800a44125',
'skia_revision': '50e82e61766d22da5238905916a8abc3e6664060',
# Note: When updating the Dart revision, ensure that all entries that are
# dependencies of dart are also updated

View File

@ -8,14 +8,15 @@
namespace flow {
static SkShader* CreateCheckerboardShader(SkColor c1, SkColor c2, int size) {
static sk_sp<SkShader> CreateCheckerboardShader(SkColor c1, SkColor c2,
int size) {
SkBitmap bm;
bm.allocN32Pixels(2 * size, 2 * size);
bm.eraseColor(c1);
bm.eraseArea(SkIRect::MakeLTRB(0, 0, size, size), c2);
bm.eraseArea(SkIRect::MakeLTRB(size, size, 2 * size, 2 * size), c2);
return SkShader::CreateBitmapShader(bm, SkShader::kRepeat_TileMode,
SkShader::kRepeat_TileMode);
return SkShader::MakeBitmapShader(bm, SkShader::kRepeat_TileMode,
SkShader::kRepeat_TileMode);
}
static void DrawCheckerboard(SkCanvas* canvas,
@ -23,7 +24,7 @@ static void DrawCheckerboard(SkCanvas* canvas,
SkColor c2,
int size) {
SkPaint paint;
paint.setShader(CreateCheckerboardShader(c1, c2, size))->unref();
paint.setShader(CreateCheckerboardShader(c1, c2, size));
canvas->drawPaint(paint);
}

View File

@ -25,7 +25,7 @@ void ShaderMaskLayer::Paint(PaintContext::ScopedFrame& frame) {
SkPaint paint;
paint.setXfermodeMode(transfer_mode_);
paint.setShader(shader_.get());
paint.setShader(shader_);
canvas.translate(mask_rect_.left(), mask_rect_.top());
canvas.drawRect(SkRect::MakeWH(mask_rect_.width(), mask_rect_.height()), paint);
}

View File

@ -16,7 +16,7 @@ class ShaderMaskLayer : public ContainerLayer {
ShaderMaskLayer();
~ShaderMaskLayer() override;
void set_shader(SkShader* shader) { shader_ = skia::SharePtr(shader); }
void set_shader(sk_sp<SkShader> shader) { shader_ = shader; }
void set_mask_rect(const SkRect& mask_rect) {
mask_rect_ = mask_rect;
@ -31,7 +31,7 @@ class ShaderMaskLayer : public ContainerLayer {
void Paint(PaintContext::ScopedFrame& frame) override;
private:
skia::RefPtr<SkShader> shader_;
sk_sp<SkShader> shader_;
SkRect mask_rect_;
SkXfermode::Mode transfer_mode_;

View File

@ -80,7 +80,7 @@ skia::RefPtr<SkImage> RasterCache::GetPrerolledImage(GrContext* context,
"height", physical_size.height());
SkImageInfo info = SkImageInfo::MakeN32Premul(physical_size);
skia::RefPtr<SkSurface> surface = skia::AdoptRef(
SkSurface::NewRenderTarget(context, SkSurface::kYes_Budgeted, info));
SkSurface::NewRenderTarget(context, SkBudgeted::kYes, info));
if (surface) {
SkCanvas* canvas = surface->getCanvas();
canvas->clear(SK_ColorTRANSPARENT);

View File

@ -332,7 +332,6 @@ component("skia") {
"//third_party/skia/src/utils/SkNinePatch.cpp",
"//third_party/skia/src/utils/SkOSFile.cpp",
"//third_party/skia/src/utils/SkParsePath.cpp",
"//third_party/skia/src/utils/SkTFitsIn.h",
#testing
"//third_party/skia/src/fonts/SkGScalerContext.cpp",