Roll src/third_party/WebKit d9c6159:8139f33 (svn 201974:201975)
[chromium-blink-merge.git] / components / html_viewer / web_layer_impl.cc
blob2580028a99b3bfb1767e9a8a7a3350a974991659
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "components/html_viewer/web_layer_impl.h"
7 #include "base/bind.h"
8 #include "cc/layers/layer.h"
9 #include "components/view_manager/public/cpp/view.h"
10 #include "ui/gfx/geometry/dip_util.h"
11 #include "ui/mojo/geometry/geometry.mojom.h"
13 using blink::WebFloatPoint;
14 using blink::WebSize;
16 namespace html_viewer {
18 namespace {
20 // See surface_layer.h for a description of this callback.
21 void SatisfyCallback(cc::SurfaceSequence sequence) {
22 // TODO(fsamuel): Implement this.
25 // See surface_layer.h for a description of this callback.
26 void RequireCallback(cc::SurfaceId surface_id,
27 cc::SurfaceSequence sequence) {
28 // TODO(fsamuel): Implement this.
33 WebLayerImpl::WebLayerImpl(mojo::View* view, float device_pixel_ratio)
34 : cc_blink::WebLayerImpl(cc::SurfaceLayer::Create(
35 cc_blink::WebLayerImpl::LayerSettings(),
36 base::Bind(&SatisfyCallback),
37 base::Bind(&RequireCallback))),
38 view_(view),
39 device_pixel_ratio_(device_pixel_ratio) {
42 WebLayerImpl::~WebLayerImpl() {
45 void WebLayerImpl::setBounds(const WebSize& size) {
46 static_cast<cc::SurfaceLayer*>(layer())->
47 SetSurfaceId(cc::SurfaceId(view_->id()),
48 device_pixel_ratio_, size);
49 cc_blink::WebLayerImpl::setBounds(size);
52 } // namespace html_viewer