OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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 // A helper class for animating the display of native widget content. | 5 // A helper class for animating the display of native widget content. |
6 // Currently only handle vertical sliding, but could be extended to handle | 6 // Currently only handle vertical sliding, but could be extended to handle |
7 // horizontal slides or other types of animations. | 7 // horizontal slides or other types of animations. |
8 // | 8 // |
9 // NOTE: This does not handle clipping. If you are not careful, you will | 9 // NOTE: This does not handle clipping. If you are not careful, you will |
10 // wind up with visibly overlapping widgets. If you need clipping, you can | 10 // wind up with visibly overlapping widgets. If you need clipping, you can |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 bool IsShowing(); | 76 bool IsShowing(); |
77 | 77 |
78 // Returns whether the widget is currently showing the close animation. | 78 // Returns whether the widget is currently showing the close animation. |
79 bool IsClosing(); | 79 bool IsClosing(); |
80 | 80 |
81 // Returns whether the widget is currently showing the open or close | 81 // Returns whether the widget is currently showing the open or close |
82 // animation. | 82 // animation. |
83 bool IsAnimating(); | 83 bool IsAnimating(); |
84 | 84 |
85 // AnimationDelegate implementation. | 85 // AnimationDelegate implementation. |
86 void AnimationProgressed(const Animation* animation); | 86 virtual void AnimationProgressed(const Animation* animation); |
87 void AnimationEnded(const Animation* animation); | 87 virtual void AnimationEnded(const Animation* animation); |
88 | 88 |
89 // Used during testing; disable or enable animations (default is enabled). | 89 // Used during testing; disable or enable animations (default is enabled). |
90 static void SetAnimationsForTesting(bool enable); | 90 static void SetAnimationsForTesting(bool enable); |
91 | 91 |
92 private: | 92 private: |
93 static void OnChildSizeAllocate(GtkWidget* child, | 93 static void OnChildSizeAllocate(GtkWidget* child, |
94 GtkAllocation* allocation, | 94 GtkAllocation* allocation, |
95 SlideAnimatorGtk* slider); | 95 SlideAnimatorGtk* slider); |
96 | 96 |
97 scoped_ptr<SlideAnimation> animation_; | 97 scoped_ptr<SlideAnimation> animation_; |
(...skipping 14 matching lines...) Expand all Loading... |
112 // We need to move the child widget to (0, -height), but we don't know its | 112 // We need to move the child widget to (0, -height), but we don't know its |
113 // height until it has been allocated. This variable will be true until the | 113 // height until it has been allocated. This variable will be true until the |
114 // child widget has been allocated, at which point we will move it, and then | 114 // child widget has been allocated, at which point we will move it, and then |
115 // set this variable to false to indicate it should not be moved again. | 115 // set this variable to false to indicate it should not be moved again. |
116 bool child_needs_move_; | 116 bool child_needs_move_; |
117 | 117 |
118 static bool animations_enabled_; | 118 static bool animations_enabled_; |
119 }; | 119 }; |
120 | 120 |
121 #endif // CHROME_BROWSER_GTK_SLIDE_ANIMATOR_GTK_H_ | 121 #endif // CHROME_BROWSER_GTK_SLIDE_ANIMATOR_GTK_H_ |
OLD | NEW |