| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "webkit/compositor_bindings/web_image_layer_impl.h" | 5 #include "webkit/compositor_bindings/web_image_layer_impl.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "cc/image_layer.h" | 8 #include "cc/image_layer.h" |
| 9 #include "cc/picture_image_layer.h" | 9 #include "cc/picture_image_layer.h" |
| 10 #include "cc/switches.h" | 10 #include "cc/switches.h" |
| 11 #include "webkit/compositor_bindings/web_layer_impl.h" | 11 #include "webkit/compositor_bindings/web_layer_impl.h" |
| 12 #include "webkit/compositor_bindings/web_layer_impl_fixed_bounds.h" |
| 12 | 13 |
| 13 static bool usingPictureLayer() | 14 static bool usingPictureLayer() |
| 14 { | 15 { |
| 15 return CommandLine::ForCurrentProcess()->HasSwitch(cc::switches::kEnableImpl
SidePainting); | 16 return CommandLine::ForCurrentProcess()->HasSwitch(cc::switches::kEnableImpl
SidePainting); |
| 16 } | 17 } |
| 17 | 18 |
| 18 namespace WebKit { | 19 namespace WebKit { |
| 19 | 20 |
| 20 WebImageLayerImpl::WebImageLayerImpl() | 21 WebImageLayerImpl::WebImageLayerImpl() |
| 21 { | 22 { |
| 22 if (usingPictureLayer()) | 23 if (usingPictureLayer()) |
| 23 m_layer.reset(new WebLayerImpl(cc::PictureImageLayer::create())); | 24 m_layer.reset(new WebLayerImplFixedBounds(cc::PictureImageLayer::create(
))); |
| 24 else | 25 else |
| 25 m_layer.reset(new WebLayerImpl(cc::ImageLayer::create())); | 26 m_layer.reset(new WebLayerImpl(cc::ImageLayer::create())); |
| 26 } | 27 } |
| 27 | 28 |
| 28 WebImageLayerImpl::~WebImageLayerImpl() | 29 WebImageLayerImpl::~WebImageLayerImpl() |
| 29 { | 30 { |
| 30 } | 31 } |
| 31 | 32 |
| 32 WebLayer* WebImageLayerImpl::layer() | 33 WebLayer* WebImageLayerImpl::layer() |
| 33 { | 34 { |
| 34 return m_layer.get(); | 35 return m_layer.get(); |
| 35 } | 36 } |
| 36 | 37 |
| 37 void WebImageLayerImpl::setBitmap(SkBitmap bitmap) | 38 void WebImageLayerImpl::setBitmap(SkBitmap bitmap) |
| 38 { | 39 { |
| 39 if (usingPictureLayer()) | 40 if (usingPictureLayer()) { |
| 40 static_cast<cc::PictureImageLayer*>(m_layer->layer())->setBitmap(bitmap)
; | 41 static_cast<cc::PictureImageLayer*>(m_layer->layer())->setBitmap(bitmap)
; |
| 41 else | 42 static_cast<WebLayerImplFixedBounds*>(m_layer.get())->SetFixedBounds(gfx
::Size(bitmap.width(), bitmap.height())); |
| 43 } else |
| 42 static_cast<cc::ImageLayer*>(m_layer->layer())->setBitmap(bitmap); | 44 static_cast<cc::ImageLayer*>(m_layer->layer())->setBitmap(bitmap); |
| 43 } | 45 } |
| 44 | 46 |
| 45 } // namespace WebKit | 47 } // namespace WebKit |
| OLD | NEW |