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 #include "cc/test/fake_painted_scrollbar_layer.h"
7 #include "base/auto_reset.h"
8 #include "cc/resources/resource_update_queue.h"
9 #include "cc/test/fake_scrollbar.h"
13 scoped_refptr
<FakePaintedScrollbarLayer
> FakePaintedScrollbarLayer::Create(
14 bool paint_during_update
,
16 int scrolling_layer_id
) {
17 FakeScrollbar
* fake_scrollbar
= new FakeScrollbar(
18 paint_during_update
, has_thumb
, false);
19 return make_scoped_refptr(new FakePaintedScrollbarLayer(
20 fake_scrollbar
, scrolling_layer_id
));
23 FakePaintedScrollbarLayer::FakePaintedScrollbarLayer(
24 FakeScrollbar
* fake_scrollbar
,
25 int scrolling_layer_id
)
26 : PaintedScrollbarLayer(scoped_ptr
<Scrollbar
>(fake_scrollbar
).Pass(),
29 push_properties_count_(0),
30 fake_scrollbar_(fake_scrollbar
) {
31 SetAnchorPoint(gfx::PointF(0.f
, 0.f
));
32 SetBounds(gfx::Size(1, 1));
36 FakePaintedScrollbarLayer::~FakePaintedScrollbarLayer() {}
38 bool FakePaintedScrollbarLayer::Update(
39 ResourceUpdateQueue
* queue
,
40 const OcclusionTracker
<Layer
>* occlusion
) {
41 bool updated
= PaintedScrollbarLayer::Update(queue
, occlusion
);
46 void FakePaintedScrollbarLayer::PushPropertiesTo(LayerImpl
* layer
) {
47 PaintedScrollbarLayer::PushPropertiesTo(layer
);
48 ++push_properties_count_
;
51 scoped_ptr
<base::AutoReset
<bool> >
52 FakePaintedScrollbarLayer::IgnoreSetNeedsCommit() {
53 return make_scoped_ptr(
54 new base::AutoReset
<bool>(&ignore_set_needs_commit_
, true));