OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef ASH_WM_OVERVIEW_SCOPED_OVERVIEW_ANIMATION_SETTINGS_FACTORY_H_ | 5 #ifndef ASH_WM_OVERVIEW_SCOPED_OVERVIEW_ANIMATION_SETTINGS_FACTORY_H_ |
6 #define ASH_WM_OVERVIEW_SCOPED_OVERVIEW_ANIMATION_SETTINGS_FACTORY_H_ | 6 #define ASH_WM_OVERVIEW_SCOPED_OVERVIEW_ANIMATION_SETTINGS_FACTORY_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "ash/wm/overview/overview_animation_type.h" | 10 #include "ash/wm/overview/overview_animation_type.h" |
11 | 11 |
12 namespace ash { | 12 namespace ash { |
13 | 13 |
14 class ScopedOverviewAnimationSettings; | 14 class ScopedOverviewAnimationSettings; |
15 | |
16 namespace wm { | |
17 class WmWindow; | 15 class WmWindow; |
18 } | |
19 | 16 |
20 // Factory for creating ScopedOverviewAnimationSettings. | 17 // Factory for creating ScopedOverviewAnimationSettings. |
21 class ScopedOverviewAnimationSettingsFactory { | 18 class ScopedOverviewAnimationSettingsFactory { |
22 public: | 19 public: |
23 static ScopedOverviewAnimationSettingsFactory* Get(); | 20 static ScopedOverviewAnimationSettingsFactory* Get(); |
24 | 21 |
25 virtual std::unique_ptr<ScopedOverviewAnimationSettings> | 22 virtual std::unique_ptr<ScopedOverviewAnimationSettings> |
26 CreateOverviewAnimationSettings(OverviewAnimationType animation_type, | 23 CreateOverviewAnimationSettings(OverviewAnimationType animation_type, |
27 wm::WmWindow* window) = 0; | 24 WmWindow* window) = 0; |
28 | 25 |
29 protected: | 26 protected: |
30 ScopedOverviewAnimationSettingsFactory(); | 27 ScopedOverviewAnimationSettingsFactory(); |
31 virtual ~ScopedOverviewAnimationSettingsFactory(); | 28 virtual ~ScopedOverviewAnimationSettingsFactory(); |
32 | 29 |
33 private: | 30 private: |
34 static ScopedOverviewAnimationSettingsFactory* instance_; | 31 static ScopedOverviewAnimationSettingsFactory* instance_; |
35 }; | 32 }; |
36 | 33 |
37 } // namespace ash | 34 } // namespace ash |
38 | 35 |
39 #endif // ASH_WM_OVERVIEW_SCOPED_OVERVIEW_ANIMATION_SETTINGS_FACTORY_H_ | 36 #endif // ASH_WM_OVERVIEW_SCOPED_OVERVIEW_ANIMATION_SETTINGS_FACTORY_H_ |
OLD | NEW |