mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
Simplify PictureLayer::Paint. (flutter/engine#2962)
This commit is contained in:
parent
3b6c77afb3
commit
e27ac27b87
@ -23,15 +23,15 @@ void PictureLayer::Preroll(PrerollContext* context, const SkMatrix& matrix) {
|
||||
void PictureLayer::Paint(PaintContext& context) {
|
||||
FTL_DCHECK(picture_);
|
||||
|
||||
TRACE_EVENT1("flutter", "PictureLayer::Paint", "image",
|
||||
image_ ? "prerolled" : "normal");
|
||||
|
||||
SkAutoCanvasRestore save(&context.canvas, true);
|
||||
context.canvas.translate(offset_.x(), offset_.y());
|
||||
|
||||
if (image_) {
|
||||
TRACE_EVENT1("flutter", "PictureLayer::Paint", "image", "prerolled");
|
||||
SkRect rect = picture_->cullRect().makeOffset(offset_.x(), offset_.y());
|
||||
context.canvas.drawImageRect(image_.get(), rect, nullptr,
|
||||
SkCanvas::kFast_SrcRectConstraint);
|
||||
context.canvas.drawImage(image_.get(), 0, 0);
|
||||
} else {
|
||||
TRACE_EVENT1("flutter", "PictureLayer::Paint", "image", "normal");
|
||||
SkAutoCanvasRestore save(&context.canvas, true);
|
||||
context.canvas.translate(offset_.x(), offset_.y());
|
||||
context.canvas.drawPicture(picture_.get());
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user