// Copyright 2013 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. #include "cc/test/fake_painted_scrollbar_layer.h" #include "base/auto_reset.h" #include "cc/resources/resource_update_queue.h" #include "cc/test/fake_scrollbar.h" namespace cc { scoped_refptr<FakePaintedScrollbarLayer> FakePaintedScrollbarLayer::Create( bool paint_during_update, bool has_thumb, int scrolling_layer_id) { FakeScrollbar* fake_scrollbar = new FakeScrollbar( paint_during_update, has_thumb, false); return make_scoped_refptr(new FakePaintedScrollbarLayer( fake_scrollbar, scrolling_layer_id)); } FakePaintedScrollbarLayer::FakePaintedScrollbarLayer( FakeScrollbar* fake_scrollbar, int scrolling_layer_id) : PaintedScrollbarLayer(scoped_ptr<Scrollbar>(fake_scrollbar).Pass(), scrolling_layer_id), update_count_(0), push_properties_count_(0), fake_scrollbar_(fake_scrollbar) { SetAnchorPoint(gfx::PointF(0.f, 0.f)); SetBounds(gfx::Size(1, 1)); SetIsDrawable(true); } FakePaintedScrollbarLayer::~FakePaintedScrollbarLayer() {} bool FakePaintedScrollbarLayer::Update(ResourceUpdateQueue* queue, const OcclusionTracker* occlusion) { bool updated = PaintedScrollbarLayer::Update(queue, occlusion); ++update_count_; return updated; } void FakePaintedScrollbarLayer::PushPropertiesTo(LayerImpl* layer) { PaintedScrollbarLayer::PushPropertiesTo(layer); ++push_properties_count_; } scoped_ptr<base::AutoReset<bool> > FakePaintedScrollbarLayer::IgnoreSetNeedsCommit() { return make_scoped_ptr( new base::AutoReset<bool>(&ignore_set_needs_commit_, true)); } } // namespace cc