Index: chrome/browser/ui/touch/animation/screen_rotation.h |
diff --git a/chrome/browser/ui/touch/animation/screen_rotation.h b/chrome/browser/ui/touch/animation/screen_rotation.h |
index 7b462709435cff3c821bb0203c719ba4816465b8..5dd5ba6b4be5200d284ee40c9ca87f4871777414 100644 |
--- a/chrome/browser/ui/touch/animation/screen_rotation.h |
+++ b/chrome/browser/ui/touch/animation/screen_rotation.h |
@@ -17,6 +17,7 @@ |
namespace ui { |
class InterpolatedTransform; |
class Layer; |
+class LayerAnimationDelegate; |
class SlideAnimation; |
class Transform; |
} |
@@ -51,6 +52,7 @@ class ScreenRotation : public ui::AnimationDelegate, |
// The screen rotation does not own the view or the listener, and these |
// objects are required to outlive the Screen rotation object. |
ScreenRotation(views::View* view, |
+ ui::LayerAnimationDelegate* delegate, |
ScreenRotationListener* listener, |
float old_degrees, |
float new_degrees); |
@@ -92,6 +94,11 @@ class ScreenRotation : public ui::AnimationDelegate, |
// update the bounds. |
views::View* view_; |
+ // This is the delegate that will be modified during the rotation. It is |
+ // important not to modify the rotation directly, otherwise we will cause |
+ // other, implicit animations. |
+ ui::LayerAnimationDelegate* delegate_; |
+ |
// This widget will be used for scheduling paints. |
views::Widget* widget_; |