OLD | NEW |
| (Empty) |
1 // Copyright 2012 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. | |
4 | |
5 #include "config.h" | |
6 | |
7 #if USE(ACCELERATED_COMPOSITING) | |
8 | |
9 #include "IOSurfaceLayerChromium.h" | |
10 | |
11 #include "CCIOSurfaceLayerImpl.h" | |
12 | |
13 namespace cc { | |
14 | |
15 scoped_refptr<IOSurfaceLayerChromium> IOSurfaceLayerChromium::create() | |
16 { | |
17 return make_scoped_refptr(new IOSurfaceLayerChromium()); | |
18 } | |
19 | |
20 IOSurfaceLayerChromium::IOSurfaceLayerChromium() | |
21 : LayerChromium() | |
22 , m_ioSurfaceId(0) | |
23 { | |
24 } | |
25 | |
26 IOSurfaceLayerChromium::~IOSurfaceLayerChromium() | |
27 { | |
28 } | |
29 | |
30 void IOSurfaceLayerChromium::setIOSurfaceProperties(uint32_t ioSurfaceId, const
IntSize& size) | |
31 { | |
32 m_ioSurfaceId = ioSurfaceId; | |
33 m_ioSurfaceSize = size; | |
34 setNeedsCommit(); | |
35 } | |
36 | |
37 scoped_ptr<CCLayerImpl> IOSurfaceLayerChromium::createCCLayerImpl() | |
38 { | |
39 return CCIOSurfaceLayerImpl::create(m_layerId).PassAs<CCLayerImpl>(); | |
40 } | |
41 | |
42 bool IOSurfaceLayerChromium::drawsContent() const | |
43 { | |
44 return m_ioSurfaceId && LayerChromium::drawsContent(); | |
45 } | |
46 | |
47 void IOSurfaceLayerChromium::pushPropertiesTo(CCLayerImpl* layer) | |
48 { | |
49 LayerChromium::pushPropertiesTo(layer); | |
50 | |
51 CCIOSurfaceLayerImpl* textureLayer = static_cast<CCIOSurfaceLayerImpl*>(laye
r); | |
52 textureLayer->setIOSurfaceProperties(m_ioSurfaceId, m_ioSurfaceSize); | |
53 } | |
54 | |
55 } | |
56 #endif // USE(ACCELERATED_COMPOSITING) | |
OLD | NEW |