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"
8 #include "cc/layers/layer.h"
9 #include "components/mus/public/cpp/view.h"
10 #include "ui/gfx/geometry/dip_util.h"
11 #include "ui/mojo/geometry/geometry.mojom.h"
13 using blink::WebFloatPoint
;
16 namespace html_viewer
{
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(mus::View
* view
, float device_pixel_ratio
)
34 : cc_blink::WebLayerImpl(
35 cc::SurfaceLayer::Create(cc_blink::WebLayerImpl::LayerSettings(),
36 base::Bind(&SatisfyCallback
),
37 base::Bind(&RequireCallback
))),
39 device_pixel_ratio_(device_pixel_ratio
) {}
41 WebLayerImpl::~WebLayerImpl() {
44 void WebLayerImpl::setBounds(const WebSize
& size
) {
45 static_cast<cc::SurfaceLayer
*>(layer())->
46 SetSurfaceId(cc::SurfaceId(view_
->id()),
47 device_pixel_ratio_
, size
);
48 cc_blink::WebLayerImpl::setBounds(size
);
51 } // namespace html_viewer