fake_painted_scrollbar_layer.cc revision a1401311d1ab56c4ed0a474bd38c108f75cb0cd9
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. 4 5#include "cc/test/fake_painted_scrollbar_layer.h" 6 7#include "base/auto_reset.h" 8#include "cc/resources/resource_update_queue.h" 9#include "cc/test/fake_scrollbar.h" 10 11namespace cc { 12 13scoped_refptr<FakePaintedScrollbarLayer> FakePaintedScrollbarLayer::Create( 14 bool paint_during_update, 15 bool has_thumb, 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)); 21} 22 23FakePaintedScrollbarLayer::FakePaintedScrollbarLayer( 24 FakeScrollbar* fake_scrollbar, 25 int scrolling_layer_id) 26 : PaintedScrollbarLayer(scoped_ptr<Scrollbar>(fake_scrollbar).Pass(), 27 scrolling_layer_id), 28 update_count_(0), 29 push_properties_count_(0), 30 fake_scrollbar_(fake_scrollbar) { 31 SetAnchorPoint(gfx::PointF(0.f, 0.f)); 32 SetBounds(gfx::Size(1, 1)); 33 SetIsDrawable(true); 34} 35 36FakePaintedScrollbarLayer::~FakePaintedScrollbarLayer() {} 37 38bool FakePaintedScrollbarLayer::Update( 39 ResourceUpdateQueue* queue, 40 const OcclusionTracker<Layer>* occlusion) { 41 bool updated = PaintedScrollbarLayer::Update(queue, occlusion); 42 ++update_count_; 43 return updated; 44} 45 46void FakePaintedScrollbarLayer::PushPropertiesTo(LayerImpl* layer) { 47 PaintedScrollbarLayer::PushPropertiesTo(layer); 48 ++push_properties_count_; 49} 50 51scoped_ptr<base::AutoReset<bool> > 52FakePaintedScrollbarLayer::IgnoreSetNeedsCommit() { 53 return make_scoped_ptr( 54 new base::AutoReset<bool>(&ignore_set_needs_commit_, true)); 55} 56 57} // namespace cc 58