// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CC_BLINK_WEB_SCROLLBAR_LAYER_IMPL_H_ #define CC_BLINK_WEB_SCROLLBAR_LAYER_IMPL_H_ #include "base/memory/scoped_ptr.h" #include "cc/blink/cc_blink_export.h" #include "third_party/WebKit/public/platform/WebScrollbar.h" #include "third_party/WebKit/public/platform/WebScrollbarLayer.h" namespace blink { class WebScrollbarThemeGeometry; class WebScrollbarThemePainter; } namespace cc_blink { class WebLayerImpl; class WebScrollbarLayerImpl : public blink::WebScrollbarLayer { public: CC_BLINK_EXPORT WebScrollbarLayerImpl( blink::WebScrollbar* scrollbar, blink::WebScrollbarThemePainter painter, blink::WebScrollbarThemeGeometry* geometry); CC_BLINK_EXPORT WebScrollbarLayerImpl( blink::WebScrollbar::Orientation orientation, int thumb_thickness, int track_start, bool is_left_side_vertical_scrollbar); ~WebScrollbarLayerImpl() override; // blink::WebScrollbarLayer implementation. blink::WebLayer* layer() override; void setScrollLayer(blink::WebLayer* layer) override; private: scoped_ptr layer_; DISALLOW_COPY_AND_ASSIGN(WebScrollbarLayerImpl); }; } // namespace cc_blink #endif // CC_BLINK_WEB_SCROLLBAR_LAYER_IMPL_H_