blob: 6fedceadb2419d5b816a7a1bf985a8ff81a3dd42 [file] [log] [blame]
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "services/gfx/compositor/render/render_frame.h"
#include "base/logging.h"
#include "skia/ext/refptr.h"
#include "third_party/skia/include/core/SkCanvas.h"
#include "third_party/skia/include/core/SkPicture.h"
namespace compositor {
RenderFrame::RenderFrame(const SkIRect& viewport,
const mojo::gfx::composition::FrameInfo& frame_info)
: viewport_(viewport), frame_info_(frame_info) {
DCHECK(!viewport_.isEmpty());
}
RenderFrame::RenderFrame(const SkIRect& viewport,
const mojo::gfx::composition::FrameInfo& frame_info,
const skia::RefPtr<SkPicture>& picture)
: viewport_(viewport), frame_info_(frame_info), picture_(picture) {
DCHECK(!viewport_.isEmpty());
}
RenderFrame::~RenderFrame() {}
void RenderFrame::Paint(SkCanvas* canvas) const {
DCHECK(canvas);
// TODO: Consider using GrDrawContext instead of SkCanvas.
canvas->clear(SK_ColorBLACK);
if (picture_)
canvas->drawPicture(picture_.get());
}
} // namespace compositor