OLD | NEW |
---|---|
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 UI_VIEWS_ANIMATION_INK_DROP_HIGHLIGHT_H_ | 5 #ifndef UI_VIEWS_ANIMATION_INK_DROP_HIGHLIGHT_H_ |
6 #define UI_VIEWS_ANIMATION_INK_DROP_HIGHLIGHT_H_ | 6 #define UI_VIEWS_ANIMATION_INK_DROP_HIGHLIGHT_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 #include <memory> | 9 #include <memory> |
10 | 10 |
(...skipping 24 matching lines...) Expand all Loading... | |
35 class InkDropHighlightObserver; | 35 class InkDropHighlightObserver; |
36 | 36 |
37 // Manages fade in/out animations for a painted Layer that is used to provide | 37 // Manages fade in/out animations for a painted Layer that is used to provide |
38 // visual feedback on ui::Views for highlight states (e.g. mouse hover, keyboard | 38 // visual feedback on ui::Views for highlight states (e.g. mouse hover, keyboard |
39 // focus). | 39 // focus). |
40 class VIEWS_EXPORT InkDropHighlight { | 40 class VIEWS_EXPORT InkDropHighlight { |
41 public: | 41 public: |
42 enum AnimationType { FADE_IN, FADE_OUT }; | 42 enum AnimationType { FADE_IN, FADE_OUT }; |
43 | 43 |
44 // Creates a highlight with a specified painter. | 44 // Creates a highlight with a specified painter. |
45 InkDropHighlight(const gfx::Point& center_point, | 45 InkDropHighlight(const gfx::PointF& center_point, |
46 std::unique_ptr<BasePaintedLayerDelegate> layer_delegate); | 46 std::unique_ptr<BasePaintedLayerDelegate> layer_delegate); |
47 | 47 |
48 // Creates a highlight that paints a partially transparent roundrect with | 48 // Creates a highlight that paints a partially transparent roundrect with |
49 // color |color|. | 49 // color |color|. |
50 InkDropHighlight(const gfx::Size& size, | 50 InkDropHighlight(const gfx::Size& size, |
51 int corner_radius, | 51 int corner_radius, |
52 const gfx::Point& center_point, | 52 const gfx::PointF& center_point, |
53 SkColor color); | 53 SkColor color); |
54 virtual ~InkDropHighlight(); | 54 virtual ~InkDropHighlight(); |
55 | 55 |
56 void set_observer(InkDropHighlightObserver* observer) { | 56 void set_observer(InkDropHighlightObserver* observer) { |
57 observer_ = observer; | 57 observer_ = observer; |
58 } | 58 } |
59 | 59 |
60 void set_explode_size(const gfx::Size& size) { explode_size_ = size; } | 60 void set_explode_size(const gfx::Size& size) { explode_size_ = size; } |
61 | 61 |
62 // Returns true if the highlight animation is either in the process of fading | 62 // Returns true if the highlight animation is either in the process of fading |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
105 | 105 |
106 // The size of the highlight shape when fully faded in. | 106 // The size of the highlight shape when fully faded in. |
107 gfx::Size size_; | 107 gfx::Size size_; |
108 | 108 |
109 // The target size of the highlight shape when it expands during a fade out | 109 // The target size of the highlight shape when it expands during a fade out |
110 // animation. | 110 // animation. |
111 gfx::Size explode_size_; | 111 gfx::Size explode_size_; |
112 | 112 |
113 // The center point of the highlight shape in the parent Layer's coordinate | 113 // The center point of the highlight shape in the parent Layer's coordinate |
114 // space. | 114 // space. |
115 gfx::PointF center_point_; | 115 gfx::PointF center_point_; |
sky
2016/06/28 02:46:25
I'm surprised we stored a float but didn't take a
| |
116 | 116 |
117 // The opacity for the fully visible state of the highlight. | 117 // The opacity for the fully visible state of the highlight. |
118 float visible_opacity_; | 118 float visible_opacity_; |
119 | 119 |
120 // True if the last animation to be initiated was a FADE_IN, and false | 120 // True if the last animation to be initiated was a FADE_IN, and false |
121 // otherwise. | 121 // otherwise. |
122 bool last_animation_initiated_was_fade_in_; | 122 bool last_animation_initiated_was_fade_in_; |
123 | 123 |
124 // The LayerDelegate that paints the highlight |layer_|. | 124 // The LayerDelegate that paints the highlight |layer_|. |
125 std::unique_ptr<BasePaintedLayerDelegate> layer_delegate_; | 125 std::unique_ptr<BasePaintedLayerDelegate> layer_delegate_; |
(...skipping 12 matching lines...) Expand all Loading... | |
138 | 138 |
139 // This is declared here for use in gtest-based unit tests but is defined in | 139 // This is declared here for use in gtest-based unit tests but is defined in |
140 // the views_test_support target. Depend on that to use this in your unit test. | 140 // the views_test_support target. Depend on that to use this in your unit test. |
141 // This should not be used in production code - call ToString() instead. | 141 // This should not be used in production code - call ToString() instead. |
142 void PrintTo(InkDropHighlight::AnimationType animation_type, | 142 void PrintTo(InkDropHighlight::AnimationType animation_type, |
143 ::std::ostream* os); | 143 ::std::ostream* os); |
144 | 144 |
145 } // namespace views | 145 } // namespace views |
146 | 146 |
147 #endif // UI_VIEWS_ANIMATION_INK_DROP_HIGHLIGHT_H_ | 147 #endif // UI_VIEWS_ANIMATION_INK_DROP_HIGHLIGHT_H_ |
OLD | NEW |