// Copyright (c) 2012 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 UI_COMPOSITOR_TEST_TEST_LAYER_ANIMATION_DELEGATE_H_ #define UI_COMPOSITOR_TEST_TEST_LAYER_ANIMATION_DELEGATE_H_ #include "base/compiler_specific.h" #include "cc/layers/layer.h" #include "ui/compositor/layer_animation_delegate.h" #include "ui/compositor/layer_threaded_animation_delegate.h" #include "ui/gfx/geometry/rect.h" #include "ui/gfx/transform.h" namespace ui { class TestLayerThreadedAnimationDelegate : public LayerThreadedAnimationDelegate { public: TestLayerThreadedAnimationDelegate(); ~TestLayerThreadedAnimationDelegate() override; // Implementation of LayerThreadedAnimationDelegate void AddThreadedAnimation(scoped_ptr animation) override; void RemoveThreadedAnimation(int animation_id) override; }; class TestLayerAnimationDelegate : public LayerAnimationDelegate { public: TestLayerAnimationDelegate(); explicit TestLayerAnimationDelegate(const LayerAnimationDelegate& other); TestLayerAnimationDelegate(const TestLayerAnimationDelegate& other); ~TestLayerAnimationDelegate() override; // Implementation of LayerAnimationDelegate void SetBoundsFromAnimation(const gfx::Rect& bounds) override; void SetTransformFromAnimation(const gfx::Transform& transform) override; void SetOpacityFromAnimation(float opacity) override; void SetVisibilityFromAnimation(bool visibility) override; void SetBrightnessFromAnimation(float brightness) override; void SetGrayscaleFromAnimation(float grayscale) override; void SetColorFromAnimation(SkColor color) override; void ScheduleDrawForAnimation() override; const gfx::Rect& GetBoundsForAnimation() const override; gfx::Transform GetTransformForAnimation() const override; float GetOpacityForAnimation() const override; bool GetVisibilityForAnimation() const override; float GetBrightnessForAnimation() const override; float GetGrayscaleForAnimation() const override; SkColor GetColorForAnimation() const override; float GetDeviceScaleFactor() const override; LayerAnimatorCollection* GetLayerAnimatorCollection() override; cc::Layer* GetCcLayer() const override; LayerThreadedAnimationDelegate* GetThreadedAnimationDelegate() override; private: void CreateCcLayer(); TestLayerThreadedAnimationDelegate threaded_delegate_; gfx::Rect bounds_; gfx::Transform transform_; float opacity_; bool visibility_; float brightness_; float grayscale_; SkColor color_; scoped_refptr cc_layer_; // Allow copy and assign. }; } // namespace ui #endif // UI_COMPOSITOR_TEST_TEST_LAYER_ANIMATION_DELEGATE_H_