1 // Copyright 2013 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 #ifndef CC_LAYERS_SOLID_COLOR_SCROLLBAR_LAYER_H_
6 #define CC_LAYERS_SOLID_COLOR_SCROLLBAR_LAYER_H_
8 #include "cc/base/cc_export.h"
9 #include "cc/layers/layer.h"
10 #include "cc/layers/scrollbar_layer_interface.h"
14 class CC_EXPORT SolidColorScrollbarLayer
: public ScrollbarLayerInterface
,
17 virtual scoped_ptr
<LayerImpl
> CreateLayerImpl(LayerTreeImpl
* tree_impl
)
20 static scoped_refptr
<SolidColorScrollbarLayer
> Create(
21 ScrollbarOrientation orientation
,
24 bool is_left_side_vertical_scrollbar
,
28 virtual bool OpacityCanAnimateOnImplThread() const OVERRIDE
;
29 virtual ScrollbarLayerInterface
* ToScrollbarLayer() OVERRIDE
;
31 virtual void PushPropertiesTo(LayerImpl
* layer
) OVERRIDE
;
32 virtual void PushScrollClipPropertiesTo(LayerImpl
* layer
) OVERRIDE
;
34 virtual void SetNeedsDisplayRect(const gfx::RectF
&) OVERRIDE
;
36 // ScrollbarLayerInterface
37 virtual int ScrollLayerId() const OVERRIDE
;
38 virtual void SetScrollLayer(int layer_id
) OVERRIDE
;
39 virtual void SetClipLayer(int layer_id
) OVERRIDE
;
41 virtual ScrollbarOrientation
orientation() const OVERRIDE
;
44 SolidColorScrollbarLayer(ScrollbarOrientation orientation
,
47 bool is_left_side_vertical_scrollbar
,
49 virtual ~SolidColorScrollbarLayer();
54 ScrollbarOrientation orientation_
;
57 bool is_left_side_vertical_scrollbar_
;
59 DISALLOW_COPY_AND_ASSIGN(SolidColorScrollbarLayer
);
64 #endif // CC_LAYERS_SOLID_COLOR_SCROLLBAR_LAYER_H_