summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/animation.cc1
-rw-r--r--app/animation.h24
-rw-r--r--app/animation_delegate.h30
-rw-r--r--app/animation_unittest.cc4
-rw-r--r--app/linear_animation.cc2
-rw-r--r--app/multi_animation.cc2
-rw-r--r--app/test_animation_delegate.h2
-rw-r--r--chrome/browser/chromeos/login/new_user_view.h1
-rw-r--r--chrome/browser/chromeos/panels/panel_scroller.h1
-rw-r--r--chrome/browser/chromeos/status/network_dropdown_button.h1
-rw-r--r--chrome/browser/chromeos/volume_bubble.h1
-rw-r--r--chrome/browser/gtk/bookmark_bar_gtk.cc1
-rw-r--r--chrome/browser/gtk/bookmark_bar_gtk.h3
-rw-r--r--chrome/browser/gtk/browser_actions_toolbar_gtk.h1
-rw-r--r--chrome/browser/gtk/browser_toolbar_gtk.h1
-rw-r--r--chrome/browser/gtk/custom_button.h1
-rw-r--r--chrome/browser/gtk/download_item_gtk.h2
-rw-r--r--chrome/browser/gtk/hover_controller_gtk.h1
-rw-r--r--chrome/browser/gtk/infobar_arrow_model.h1
-rw-r--r--chrome/browser/gtk/infobar_gtk.h1
-rw-r--r--chrome/browser/gtk/notifications/balloon_view_gtk.h2
-rw-r--r--chrome/browser/gtk/slide_animator_gtk.h2
-rw-r--r--chrome/browser/gtk/status_bubble_gtk.cc1
-rw-r--r--chrome/browser/gtk/status_bubble_gtk.h3
-rw-r--r--chrome/browser/gtk/tabs/dragged_tab_gtk.h1
-rw-r--r--chrome/browser/gtk/tabs/tab_renderer_gtk.cc1
-rw-r--r--chrome/browser/gtk/tabs/tab_renderer_gtk.h4
-rw-r--r--chrome/browser/gtk/tabs/tab_strip_gtk.cc1
-rw-r--r--chrome/browser/gtk/translate/translate_infobar_base_gtk.h1
-rw-r--r--chrome/browser/ui/views/app_launched_animation_win.cc1
-rw-r--r--chrome/browser/ui/views/autocomplete/autocomplete_popup_contents_view.h1
-rw-r--r--chrome/browser/ui/views/bookmark_bar_view.cc9
-rw-r--r--chrome/browser/ui/views/bookmark_bar_view.h9
-rw-r--r--chrome/browser/ui/views/browser_actions_container.h4
-rw-r--r--chrome/browser/ui/views/download_item_view.cc1
-rw-r--r--chrome/browser/ui/views/download_item_view.h3
-rw-r--r--chrome/browser/ui/views/download_shelf_view.cc1
-rw-r--r--chrome/browser/ui/views/download_shelf_view.h4
-rw-r--r--chrome/browser/ui/views/dropdown_bar_host.h2
-rw-r--r--chrome/browser/ui/views/frame/contents_container.h2
-rw-r--r--chrome/browser/ui/views/fullscreen_exit_bubble.cc1
-rw-r--r--chrome/browser/ui/views/fullscreen_exit_bubble.h4
-rw-r--r--chrome/browser/ui/views/info_bubble.cc4
-rw-r--r--chrome/browser/ui/views/info_bubble.h13
-rw-r--r--chrome/browser/ui/views/infobars/infobars.h2
-rw-r--r--chrome/browser/ui/views/location_bar/suggested_text_view.h2
-rw-r--r--chrome/browser/ui/views/notifications/balloon_view.cc1
-rw-r--r--chrome/browser/ui/views/notifications/balloon_view.h3
-rw-r--r--chrome/browser/ui/views/page_info_bubble_view.h2
-rw-r--r--chrome/browser/ui/views/status_bubble_views.cc1
-rw-r--r--chrome/browser/ui/views/tabs/base_tab.h3
-rw-r--r--chrome/browser/ui/views/tabs/dragged_tab_controller.cc1
-rw-r--r--views/animation/bounds_animator.h2
-rw-r--r--views/controls/button/custom_button.h2
54 files changed, 119 insertions, 56 deletions
diff --git a/app/animation.cc b/app/animation.cc
index edb1232..40f53f9 100644
--- a/app/animation.cc
+++ b/app/animation.cc
@@ -4,6 +4,7 @@
#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "app/tween.h"
#include "gfx/rect.h"
diff --git a/app/animation.h b/app/animation.h
index 8433f29..06ccf52 100644
--- a/app/animation.h
+++ b/app/animation.h
@@ -14,29 +14,7 @@ namespace gfx {
class Rect;
}
-class Animation;
-
-// AnimationDelegate
-//
-// Implement this interface when you want to receive notifications about the
-// state of an animation.
-class AnimationDelegate {
- public:
- // Called when an animation has completed.
- virtual void AnimationEnded(const Animation* animation) {
- }
-
- // Called when an animation has progressed.
- virtual void AnimationProgressed(const Animation* animation) {
- }
-
- // Called when an animation has been canceled.
- virtual void AnimationCanceled(const Animation* animation) {
- }
-
- protected:
- virtual ~AnimationDelegate() {}
-};
+class AnimationDelegate;
// Base class used in implementing animations. You only need use this class if
// you're implementing a new animation type, otherwise you'll likely want one of
diff --git a/app/animation_delegate.h b/app/animation_delegate.h
new file mode 100644
index 0000000..bed2c9d
--- /dev/null
+++ b/app/animation_delegate.h
@@ -0,0 +1,30 @@
+// Copyright (c) 2010 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 APP_ANIMATION_DELEGATE_H_
+#define APP_ANIMATION_DELEGATE_H_
+#pragma once
+
+class Animation;
+
+// AnimationDelegate
+//
+// Implement this interface when you want to receive notifications about the
+// state of an animation.
+class AnimationDelegate {
+ public:
+ // Called when an animation has completed.
+ virtual void AnimationEnded(const Animation* animation) {}
+
+ // Called when an animation has progressed.
+ virtual void AnimationProgressed(const Animation* animation) {}
+
+ // Called when an animation has been canceled.
+ virtual void AnimationCanceled(const Animation* animation) {}
+
+ protected:
+ virtual ~AnimationDelegate() {}
+};
+
+#endif // APP_ANIMATION_DELEGATE_H_
diff --git a/app/animation_unittest.cc b/app/animation_unittest.cc
index 280e74f..a4ab2fe 100644
--- a/app/animation_unittest.cc
+++ b/app/animation_unittest.cc
@@ -2,12 +2,14 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include "app/animation_delegate.h"
#include "app/linear_animation.h"
#include "app/test_animation_delegate.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
#if defined(OS_WIN)
#include "base/win/windows_version.h"
#endif
-#include "testing/gtest/include/gtest/gtest.h"
class AnimationTest: public testing::Test {
private:
diff --git a/app/linear_animation.cc b/app/linear_animation.cc
index 93b2a81..533a435 100644
--- a/app/linear_animation.cc
+++ b/app/linear_animation.cc
@@ -6,6 +6,8 @@
#include <math.h>
+#include "app/animation_delegate.h"
+
using base::Time;
using base::TimeDelta;
diff --git a/app/multi_animation.cc b/app/multi_animation.cc
index 812a668..3ba6715 100644
--- a/app/multi_animation.cc
+++ b/app/multi_animation.cc
@@ -4,6 +4,8 @@
#include "app/multi_animation.h"
+#include "app/animation_delegate.h"
+
// Default interval, in ms.
static const int kDefaultInterval = 20;
diff --git a/app/test_animation_delegate.h b/app/test_animation_delegate.h
index c88aa9f..6f17331 100644
--- a/app/test_animation_delegate.h
+++ b/app/test_animation_delegate.h
@@ -6,7 +6,7 @@
#define APP_TEST_ANIMATION_DELEGATE_H_
#pragma once
-#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "base/message_loop.h"
// Trivial AnimationDelegate implementation. AnimationEnded/Canceled quit the
diff --git a/chrome/browser/chromeos/login/new_user_view.h b/chrome/browser/chromeos/login/new_user_view.h
index face22b..7b40461 100644
--- a/chrome/browser/chromeos/login/new_user_view.h
+++ b/chrome/browser/chromeos/login/new_user_view.h
@@ -8,6 +8,7 @@
#include <string>
+#include "base/task.h"
#include "chrome/browser/chromeos/login/language_switch_menu.h"
#include "views/accelerator.h"
#include "views/controls/button/button.h"
diff --git a/chrome/browser/chromeos/panels/panel_scroller.h b/chrome/browser/chromeos/panels/panel_scroller.h
index cc9befb..366bc5a 100644
--- a/chrome/browser/chromeos/panels/panel_scroller.h
+++ b/chrome/browser/chromeos/panels/panel_scroller.h
@@ -8,6 +8,7 @@
#include <vector>
+#include "app/animation_delegate.h"
#include "app/slide_animation.h"
#include "base/basictypes.h"
#include "views/view.h"
diff --git a/chrome/browser/chromeos/status/network_dropdown_button.h b/chrome/browser/chromeos/status/network_dropdown_button.h
index a187f71..68ac84f 100644
--- a/chrome/browser/chromeos/status/network_dropdown_button.h
+++ b/chrome/browser/chromeos/status/network_dropdown_button.h
@@ -6,6 +6,7 @@
#define CHROME_BROWSER_CHROMEOS_STATUS_NETWORK_DROPDOWN_BUTTON_H_
#pragma once
+#include "app/animation_delegate.h"
#include "app/throb_animation.h"
#include "chrome/browser/chromeos/cros/network_library.h"
#include "chrome/browser/chromeos/status/network_menu.h"
diff --git a/chrome/browser/chromeos/volume_bubble.h b/chrome/browser/chromeos/volume_bubble.h
index c2da38e..addd7e47 100644
--- a/chrome/browser/chromeos/volume_bubble.h
+++ b/chrome/browser/chromeos/volume_bubble.h
@@ -6,6 +6,7 @@
#define CHROME_BROWSER_CHROMEOS_VOLUME_BUBBLE_H_
#pragma once
+#include "app/animation_delegate.h"
#include "app/slide_animation.h"
#include "base/singleton.h"
#include "chrome/browser/views/info_bubble.h"
diff --git a/chrome/browser/gtk/bookmark_bar_gtk.cc b/chrome/browser/gtk/bookmark_bar_gtk.cc
index d40405fbd..4784b2a 100644
--- a/chrome/browser/gtk/bookmark_bar_gtk.cc
+++ b/chrome/browser/gtk/bookmark_bar_gtk.cc
@@ -7,6 +7,7 @@
#include <vector>
#include "app/gtk_dnd_util.h"
+#include "app/slide_animation.h"
#include "app/resource_bundle.h"
#include "base/utf_string_conversions.h"
#include "chrome/browser/bookmarks/bookmark_drag_data.h"
diff --git a/chrome/browser/gtk/bookmark_bar_gtk.h b/chrome/browser/gtk/bookmark_bar_gtk.h
index 2e7f985..0939c70 100644
--- a/chrome/browser/gtk/bookmark_bar_gtk.h
+++ b/chrome/browser/gtk/bookmark_bar_gtk.h
@@ -10,8 +10,8 @@
#include <vector>
+#include "app/animation_delegate.h"
#include "app/gtk_signal.h"
-#include "app/slide_animation.h"
#include "base/gtest_prod_util.h"
#include "base/scoped_ptr.h"
#include "chrome/browser/bookmarks/bookmark_context_menu_controller.h"
@@ -34,6 +34,7 @@ class GtkThemeProvider;
class MenuGtk;
class PageNavigator;
class Profile;
+class SlideAnimation;
class TabstripOriginProvider;
class BookmarkBarGtk : public AnimationDelegate,
diff --git a/chrome/browser/gtk/browser_actions_toolbar_gtk.h b/chrome/browser/gtk/browser_actions_toolbar_gtk.h
index 72cf960..ac80386 100644
--- a/chrome/browser/gtk/browser_actions_toolbar_gtk.h
+++ b/chrome/browser/gtk/browser_actions_toolbar_gtk.h
@@ -9,6 +9,7 @@
#include <map>
#include <string>
+#include "app/animation_delegate.h"
#include "app/gtk_signal.h"
#include "app/gtk_signal_registrar.h"
#include "app/menus/simple_menu_model.h"
diff --git a/chrome/browser/gtk/browser_toolbar_gtk.h b/chrome/browser/gtk/browser_toolbar_gtk.h
index 1e27f8f..f2e8fec 100644
--- a/chrome/browser/gtk/browser_toolbar_gtk.h
+++ b/chrome/browser/gtk/browser_toolbar_gtk.h
@@ -10,6 +10,7 @@
#include <string>
#include "app/active_window_watcher_x.h"
+#include "app/animation_delegate.h"
#include "app/gtk_signal.h"
#include "app/gtk_signal_registrar.h"
#include "app/menus/accelerator.h"
diff --git a/chrome/browser/gtk/custom_button.h b/chrome/browser/gtk/custom_button.h
index 4d19510..785df6b 100644
--- a/chrome/browser/gtk/custom_button.h
+++ b/chrome/browser/gtk/custom_button.h
@@ -8,6 +8,7 @@
#include <gtk/gtk.h>
+#include "app/animation_delegate.h"
#include "app/gtk_signal.h"
#include "app/slide_animation.h"
#include "base/scoped_ptr.h"
diff --git a/chrome/browser/gtk/download_item_gtk.h b/chrome/browser/gtk/download_item_gtk.h
index f73592a..a9ad27d 100644
--- a/chrome/browser/gtk/download_item_gtk.h
+++ b/chrome/browser/gtk/download_item_gtk.h
@@ -10,7 +10,7 @@
#include <string>
-#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "app/gtk_signal.h"
#include "base/scoped_ptr.h"
#include "base/time.h"
diff --git a/chrome/browser/gtk/hover_controller_gtk.h b/chrome/browser/gtk/hover_controller_gtk.h
index 4806e34..5504720 100644
--- a/chrome/browser/gtk/hover_controller_gtk.h
+++ b/chrome/browser/gtk/hover_controller_gtk.h
@@ -8,6 +8,7 @@
#include <gtk/gtk.h>
+#include "app/animation_delegate.h"
#include "app/gtk_signal.h"
#include "app/gtk_signal_registrar.h"
#include "app/slide_animation.h"
diff --git a/chrome/browser/gtk/infobar_arrow_model.h b/chrome/browser/gtk/infobar_arrow_model.h
index 369e586..721f32b 100644
--- a/chrome/browser/gtk/infobar_arrow_model.h
+++ b/chrome/browser/gtk/infobar_arrow_model.h
@@ -7,6 +7,7 @@
#include <gtk/gtk.h>
+#include "app/animation_delegate.h"
#include "app/slide_animation.h"
#include "third_party/skia/include/core/SkPaint.h"
diff --git a/chrome/browser/gtk/infobar_gtk.h b/chrome/browser/gtk/infobar_gtk.h
index 4293ea8..d0dd542 100644
--- a/chrome/browser/gtk/infobar_gtk.h
+++ b/chrome/browser/gtk/infobar_gtk.h
@@ -7,7 +7,6 @@
#pragma once
#include "app/gtk_signal.h"
-#include "app/slide_animation.h"
#include "base/basictypes.h"
#include "base/scoped_ptr.h"
#include "chrome/browser/gtk/infobar_arrow_model.h"
diff --git a/chrome/browser/gtk/notifications/balloon_view_gtk.h b/chrome/browser/gtk/notifications/balloon_view_gtk.h
index 652a610..dce5869 100644
--- a/chrome/browser/gtk/notifications/balloon_view_gtk.h
+++ b/chrome/browser/gtk/notifications/balloon_view_gtk.h
@@ -8,7 +8,7 @@
#define CHROME_BROWSER_GTK_NOTIFICATIONS_BALLOON_VIEW_GTK_H_
#pragma once
-#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "app/gtk_signal.h"
#include "base/basictypes.h"
#include "base/scoped_ptr.h"
diff --git a/chrome/browser/gtk/slide_animator_gtk.h b/chrome/browser/gtk/slide_animator_gtk.h
index df6d29b..dabdd70 100644
--- a/chrome/browser/gtk/slide_animator_gtk.h
+++ b/chrome/browser/gtk/slide_animator_gtk.h
@@ -17,7 +17,7 @@
#include <gtk/gtk.h>
-#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "base/scoped_ptr.h"
#include "chrome/browser/gtk/owned_widget_gtk.h"
diff --git a/chrome/browser/gtk/status_bubble_gtk.cc b/chrome/browser/gtk/status_bubble_gtk.cc
index fbb8989..08eab1a 100644
--- a/chrome/browser/gtk/status_bubble_gtk.cc
+++ b/chrome/browser/gtk/status_bubble_gtk.cc
@@ -8,6 +8,7 @@
#include <algorithm>
+#include "app/slide_animation.h"
#include "app/text_elider.h"
#include "base/i18n/rtl.h"
#include "base/message_loop.h"
diff --git a/chrome/browser/gtk/status_bubble_gtk.h b/chrome/browser/gtk/status_bubble_gtk.h
index 1706665..b951b79 100644
--- a/chrome/browser/gtk/status_bubble_gtk.h
+++ b/chrome/browser/gtk/status_bubble_gtk.h
@@ -10,8 +10,8 @@
#include <string>
+#include "app/animation_delegate.h"
#include "app/gtk_signal.h"
-#include "app/slide_animation.h"
#include "base/scoped_ptr.h"
#include "base/timer.h"
#include "chrome/browser/gtk/owned_widget_gtk.h"
@@ -23,6 +23,7 @@
class GtkThemeProvider;
class Profile;
+class SlideAnimation;
// GTK implementation of StatusBubble. Unlike Windows, our status bubble
// doesn't have the nice leave-the-window effect since we can't rely on the
diff --git a/chrome/browser/gtk/tabs/dragged_tab_gtk.h b/chrome/browser/gtk/tabs/dragged_tab_gtk.h
index 38c6525..6d7fcc4 100644
--- a/chrome/browser/gtk/tabs/dragged_tab_gtk.h
+++ b/chrome/browser/gtk/tabs/dragged_tab_gtk.h
@@ -8,6 +8,7 @@
#include <gtk/gtk.h>
+#include "app/animation_delegate.h"
#include "app/slide_animation.h"
#include "base/callback.h"
#include "base/scoped_ptr.h"
diff --git a/chrome/browser/gtk/tabs/tab_renderer_gtk.cc b/chrome/browser/gtk/tabs/tab_renderer_gtk.cc
index ad2c5fa..5afd379 100644
--- a/chrome/browser/gtk/tabs/tab_renderer_gtk.cc
+++ b/chrome/browser/gtk/tabs/tab_renderer_gtk.cc
@@ -9,6 +9,7 @@
#include "app/l10n_util.h"
#include "app/resource_bundle.h"
+#include "app/slide_animation.h"
#include "app/throb_animation.h"
#include "base/utf_string_conversions.h"
#include "chrome/browser/defaults.h"
diff --git a/chrome/browser/gtk/tabs/tab_renderer_gtk.h b/chrome/browser/gtk/tabs/tab_renderer_gtk.h
index 51f11b7..6849a2a 100644
--- a/chrome/browser/gtk/tabs/tab_renderer_gtk.h
+++ b/chrome/browser/gtk/tabs/tab_renderer_gtk.h
@@ -9,9 +9,8 @@
#include <gtk/gtk.h>
#include <map>
-#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "app/gtk_signal.h"
-#include "app/slide_animation.h"
#include "base/basictypes.h"
#include "base/scoped_ptr.h"
#include "base/string16.h"
@@ -29,6 +28,7 @@ class Size;
class CustomDrawButton;
class GtkThemeProvider;
+class SlideAnimation;
class TabContents;
class ThemeProvider;
class ThrobAnimation;
diff --git a/chrome/browser/gtk/tabs/tab_strip_gtk.cc b/chrome/browser/gtk/tabs/tab_strip_gtk.cc
index 0685c43..41d1e27 100644
--- a/chrome/browser/gtk/tabs/tab_strip_gtk.cc
+++ b/chrome/browser/gtk/tabs/tab_strip_gtk.cc
@@ -6,6 +6,7 @@
#include <algorithm>
+#include "app/animation_delegate.h"
#include "app/gtk_dnd_util.h"
#include "app/resource_bundle.h"
#include "app/slide_animation.h"
diff --git a/chrome/browser/gtk/translate/translate_infobar_base_gtk.h b/chrome/browser/gtk/translate/translate_infobar_base_gtk.h
index ce851f9..8b2303b 100644
--- a/chrome/browser/gtk/translate/translate_infobar_base_gtk.h
+++ b/chrome/browser/gtk/translate/translate_infobar_base_gtk.h
@@ -6,6 +6,7 @@
#define CHROME_BROWSER_GTK_TRANSLATE_TRANSLATE_INFOBAR_BASE_GTK_H_
#pragma once
+#include "app/animation_delegate.h"
#include "chrome/browser/translate/translate_infobar_view.h"
#include "chrome/browser/gtk/infobar_gtk.h"
diff --git a/chrome/browser/ui/views/app_launched_animation_win.cc b/chrome/browser/ui/views/app_launched_animation_win.cc
index 50efc5d..0fe5d05 100644
--- a/chrome/browser/ui/views/app_launched_animation_win.cc
+++ b/chrome/browser/ui/views/app_launched_animation_win.cc
@@ -5,6 +5,7 @@
#include "chrome/browser/app_launched_animation.h"
#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "app/slide_animation.h"
#include "chrome/browser/extensions/image_loading_tracker.h"
#include "chrome/common/extensions/extension.h"
diff --git a/chrome/browser/ui/views/autocomplete/autocomplete_popup_contents_view.h b/chrome/browser/ui/views/autocomplete/autocomplete_popup_contents_view.h
index e634555..d6adea1 100644
--- a/chrome/browser/ui/views/autocomplete/autocomplete_popup_contents_view.h
+++ b/chrome/browser/ui/views/autocomplete/autocomplete_popup_contents_view.h
@@ -6,6 +6,7 @@
#define CHROME_BROWSER_UI_VIEWS_AUTOCOMPLETE_AUTOCOMPLETE_POPUP_CONTENTS_VIEW_H_
#pragma once
+#include "app/animation_delegate.h"
#include "app/slide_animation.h"
#include "chrome/browser/autocomplete/autocomplete.h"
#include "chrome/browser/autocomplete/autocomplete_popup_model.h"
diff --git a/chrome/browser/ui/views/bookmark_bar_view.cc b/chrome/browser/ui/views/bookmark_bar_view.cc
index 54fb27b..439df1d 100644
--- a/chrome/browser/ui/views/bookmark_bar_view.cc
+++ b/chrome/browser/ui/views/bookmark_bar_view.cc
@@ -12,6 +12,7 @@
#include "app/l10n_util.h"
#include "app/os_exchange_data.h"
#include "app/resource_bundle.h"
+#include "app/slide_animation.h"
#include "app/text_elider.h"
#include "base/i18n/rtl.h"
#include "base/string_util.h"
@@ -748,6 +749,10 @@ bool BookmarkBarView::IsOnTop() const {
return true;
}
+double BookmarkBarView::GetAnimationValue() const {
+ return size_animation_->GetCurrentValue();
+}
+
bool BookmarkBarView::IsAlwaysShown() const {
return profile_->GetPrefs()->GetBoolean(prefs::kShowBookmarkBar);
}
@@ -772,6 +777,10 @@ int BookmarkBarView::GetToolbarOverlap(bool return_max) const {
size_animation_->GetCurrentValue());
}
+bool BookmarkBarView::is_animating() {
+ return size_animation_->is_animating();
+}
+
void BookmarkBarView::AnimationProgressed(const Animation* animation) {
if (browser_)
browser_->ToolbarSizeChanged(true);
diff --git a/chrome/browser/ui/views/bookmark_bar_view.h b/chrome/browser/ui/views/bookmark_bar_view.h
index 356d944..a70a03d 100644
--- a/chrome/browser/ui/views/bookmark_bar_view.h
+++ b/chrome/browser/ui/views/bookmark_bar_view.h
@@ -8,7 +8,7 @@
#include <set>
-#include "app/slide_animation.h"
+#include "app/animation_delegate.h"
#include "chrome/browser/bookmarks/bookmark_drag_data.h"
#include "chrome/browser/bookmarks/bookmark_model_observer.h"
#include "chrome/browser/sync/profile_sync_service.h"
@@ -22,6 +22,7 @@
class Browser;
class PageNavigator;
class PrefService;
+class SlideAnimation;
namespace views {
class CustomButton;
@@ -108,9 +109,7 @@ class BookmarkBarView : public DetachableToolbarView,
// DetachableToolbarView methods:
virtual bool IsDetached() const;
virtual bool IsOnTop() const;
- virtual double GetAnimationValue() const {
- return size_animation_->GetCurrentValue();
- }
+ virtual double GetAnimationValue() const;
virtual int GetToolbarOverlap() const {
return GetToolbarOverlap(false);
}
@@ -178,7 +177,7 @@ class BookmarkBarView : public DetachableToolbarView,
int GetToolbarOverlap(bool return_max) const;
// Whether or not we are animating.
- bool is_animating() { return size_animation_->is_animating(); }
+ bool is_animating();
// SlideAnimationDelegate implementation.
void AnimationProgressed(const Animation* animation);
diff --git a/chrome/browser/ui/views/browser_actions_container.h b/chrome/browser/ui/views/browser_actions_container.h
index 5c5b3b4..62b567f 100644
--- a/chrome/browser/ui/views/browser_actions_container.h
+++ b/chrome/browser/ui/views/browser_actions_container.h
@@ -10,7 +10,8 @@
#include <string>
#include <vector>
-#include "app/slide_animation.h"
+#include "app/animation_delegate.h"
+#include "app/tween.h"
#include "base/task.h"
#include "chrome/browser/extensions/extension_context_menu_model.h"
#include "chrome/browser/extensions/extension_toolbar_model.h"
@@ -34,6 +35,7 @@ class ExtensionAction;
class ExtensionPopup;
class PrefService;
class Profile;
+class SlideAnimation;
namespace gfx {
class CanvasSkia;
diff --git a/chrome/browser/ui/views/download_item_view.cc b/chrome/browser/ui/views/download_item_view.cc
index 3ceaf52..7b3e579 100644
--- a/chrome/browser/ui/views/download_item_view.cc
+++ b/chrome/browser/ui/views/download_item_view.cc
@@ -8,6 +8,7 @@
#include "app/l10n_util.h"
#include "app/resource_bundle.h"
+#include "app/slide_animation.h"
#include "app/text_elider.h"
#include "base/callback.h"
#include "base/file_path.h"
diff --git a/chrome/browser/ui/views/download_item_view.h b/chrome/browser/ui/views/download_item_view.h
index a6c138b..476f479 100644
--- a/chrome/browser/ui/views/download_item_view.h
+++ b/chrome/browser/ui/views/download_item_view.h
@@ -19,7 +19,7 @@
#include <string>
-#include "app/slide_animation.h"
+#include "app/animation_delegate.h"
#include "base/basictypes.h"
#include "base/scoped_ptr.h"
#include "base/time.h"
@@ -41,6 +41,7 @@ class BaseDownloadItemModel;
class DownloadShelfView;
class SkBitmap;
class DownloadShelfContextMenuWin;
+class SlideAnimation;
class DownloadItemView : public views::ButtonListener,
public views::View,
diff --git a/chrome/browser/ui/views/download_shelf_view.cc b/chrome/browser/ui/views/download_shelf_view.cc
index 139fa54..7ad21cc 100644
--- a/chrome/browser/ui/views/download_shelf_view.cc
+++ b/chrome/browser/ui/views/download_shelf_view.cc
@@ -8,6 +8,7 @@
#include "app/l10n_util.h"
#include "app/resource_bundle.h"
+#include "app/slide_animation.h"
#include "base/logging.h"
#include "chrome/browser/download/download_item.h"
#include "chrome/browser/download/download_item_model.h"
diff --git a/chrome/browser/ui/views/download_shelf_view.h b/chrome/browser/ui/views/download_shelf_view.h
index 126eff0..4394a2f 100644
--- a/chrome/browser/ui/views/download_shelf_view.h
+++ b/chrome/browser/ui/views/download_shelf_view.h
@@ -6,7 +6,7 @@
#define CHROME_BROWSER_UI_VIEWS_DOWNLOAD_SHELF_VIEW_H_
#pragma once
-#include "app/slide_animation.h"
+#include "app/animation_delegate.h"
#include "chrome/browser/download/download_shelf.h"
#include "chrome/browser/views/accessible_pane_view.h"
#include "views/controls/button/button.h"
@@ -21,9 +21,9 @@ class ImageView;
class BaseDownloadItemModel;
class Browser;
class BrowserView;
-
class DownloadAnimation;
class DownloadItemView;
+class SlideAnimation;
// DownloadShelfView is a view that contains individual views for each download,
// as well as a close button and a link to show all downloads.
diff --git a/chrome/browser/ui/views/dropdown_bar_host.h b/chrome/browser/ui/views/dropdown_bar_host.h
index a2a0acd..f971ed0 100644
--- a/chrome/browser/ui/views/dropdown_bar_host.h
+++ b/chrome/browser/ui/views/dropdown_bar_host.h
@@ -6,7 +6,7 @@
#define CHROME_BROWSER_UI_VIEWS_DROPDOWN_BAR_HOST_H_
#pragma once
-#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "base/scoped_ptr.h"
#include "chrome/common/native_web_keyboard_event.h"
#include "gfx/native_widget_types.h"
diff --git a/chrome/browser/ui/views/frame/contents_container.h b/chrome/browser/ui/views/frame/contents_container.h
index 9f25c6b..9b32e2d 100644
--- a/chrome/browser/ui/views/frame/contents_container.h
+++ b/chrome/browser/ui/views/frame/contents_container.h
@@ -6,7 +6,7 @@
#define CHROME_BROWSER_UI_VIEWS_FRAME_CONTENTS_CONTAINER_H_
#pragma once
-#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "base/scoped_ptr.h"
#include "views/view.h"
diff --git a/chrome/browser/ui/views/fullscreen_exit_bubble.cc b/chrome/browser/ui/views/fullscreen_exit_bubble.cc
index 635e9d2..3e303a2 100644
--- a/chrome/browser/ui/views/fullscreen_exit_bubble.cc
+++ b/chrome/browser/ui/views/fullscreen_exit_bubble.cc
@@ -7,6 +7,7 @@
#include "app/keyboard_codes.h"
#include "app/l10n_util.h"
#include "app/resource_bundle.h"
+#include "app/slide_animation.h"
#include "chrome/app/chrome_command_ids.h"
#include "gfx/canvas_skia.h"
#include "grit/generated_resources.h"
diff --git a/chrome/browser/ui/views/fullscreen_exit_bubble.h b/chrome/browser/ui/views/fullscreen_exit_bubble.h
index 167f885..bb1c550 100644
--- a/chrome/browser/ui/views/fullscreen_exit_bubble.h
+++ b/chrome/browser/ui/views/fullscreen_exit_bubble.h
@@ -6,7 +6,7 @@
#define CHROME_BROWSER_UI_VIEWS_FULLSCREEN_EXIT_BUBBLE_H__
#pragma once
-#include "app/slide_animation.h"
+#include "app/animation_delegate.h"
#include "base/scoped_ptr.h"
#include "base/timer.h"
#include "chrome/browser/command_updater.h"
@@ -18,6 +18,8 @@ class WidgetGtk;
}
#endif
+class SlideAnimation;
+
// FullscreenExitBubble is responsible for showing a bubble atop the screen in
// fullscreen mode, telling users how to exit and providing a click target.
// The bubble auto-hides, and re-shows when the user moves to the screen top.
diff --git a/chrome/browser/ui/views/info_bubble.cc b/chrome/browser/ui/views/info_bubble.cc
index 28e0181..befb716 100644
--- a/chrome/browser/ui/views/info_bubble.cc
+++ b/chrome/browser/ui/views/info_bubble.cc
@@ -5,6 +5,7 @@
#include "chrome/browser/views/info_bubble.h"
#include "app/keyboard_codes.h"
+#include "app/slide_animation.h"
#include "chrome/browser/window_sizer.h"
#include "chrome/common/notification_service.h"
#include "gfx/canvas_skia.h"
@@ -332,6 +333,9 @@ InfoBubble::InfoBubble(views::WidgetGtk::Type type)
}
#endif
+InfoBubble::~InfoBubble() {
+}
+
void InfoBubble::Init(views::Widget* parent,
const gfx::Rect& position_relative_to,
BubbleBorder::ArrowLocation arrow_location,
diff --git a/chrome/browser/ui/views/info_bubble.h b/chrome/browser/ui/views/info_bubble.h
index 8b6d854..a0db967 100644
--- a/chrome/browser/ui/views/info_bubble.h
+++ b/chrome/browser/ui/views/info_bubble.h
@@ -6,11 +6,12 @@
#define CHROME_BROWSER_UI_VIEWS_INFO_BUBBLE_H_
#pragma once
-#include "app/slide_animation.h"
+#include "app/animation_delegate.h"
#include "third_party/skia/include/core/SkColor.h"
#include "views/accelerator.h"
#include "views/view.h"
#include "chrome/browser/views/bubble_border.h"
+
#if defined(OS_WIN)
#include "views/widget/widget_win.h"
#elif defined(OS_LINUX)
@@ -26,10 +27,8 @@
// InfoBubble insets the contents for you, so the contents typically shouldn't
// have any additional margins.
-#if defined(OS_WIN)
-class BorderWidget;
-#endif
class InfoBubble;
+class SlideAnimation;
namespace views {
class Widget;
@@ -39,6 +38,10 @@ namespace gfx {
class Path;
}
+#if defined(OS_WIN)
+class BorderWidget;
+#endif
+
// This is used to paint the border of the InfoBubble. Windows uses this via
// BorderWidget (see below), while others can use it directly in the bubble.
class BorderContents : public views::View {
@@ -233,7 +236,7 @@ class InfoBubble
#if defined(OS_CHROMEOS)
explicit InfoBubble(views::WidgetGtk::Type type);
#endif
- virtual ~InfoBubble() {}
+ virtual ~InfoBubble();
// Creates the InfoBubble.
virtual void Init(views::Widget* parent,
diff --git a/chrome/browser/ui/views/infobars/infobars.h b/chrome/browser/ui/views/infobars/infobars.h
index a168e3c..2e32ac6 100644
--- a/chrome/browser/ui/views/infobars/infobars.h
+++ b/chrome/browser/ui/views/infobars/infobars.h
@@ -6,7 +6,7 @@
#define CHROME_BROWSER_UI_VIEWS_INFOBARS_INFOBARS_H_
#pragma once
-#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "base/task.h"
#include "chrome/browser/tab_contents/infobar_delegate.h"
#include "views/controls/button/button.h"
diff --git a/chrome/browser/ui/views/location_bar/suggested_text_view.h b/chrome/browser/ui/views/location_bar/suggested_text_view.h
index 83c4cb5..688346f 100644
--- a/chrome/browser/ui/views/location_bar/suggested_text_view.h
+++ b/chrome/browser/ui/views/location_bar/suggested_text_view.h
@@ -6,7 +6,7 @@
#define CHROME_BROWSER_UI_VIEWS_LOCATION_BAR_SUGGESTED_TEXT_VIEW_H_
#pragma once
-#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "views/controls/label.h"
class LocationBarView;
diff --git a/chrome/browser/ui/views/notifications/balloon_view.cc b/chrome/browser/ui/views/notifications/balloon_view.cc
index cf0442b..c394b9a 100644
--- a/chrome/browser/ui/views/notifications/balloon_view.cc
+++ b/chrome/browser/ui/views/notifications/balloon_view.cc
@@ -8,6 +8,7 @@
#include "app/l10n_util.h"
#include "app/resource_bundle.h"
+#include "app/slide_animation.h"
#include "base/message_loop.h"
#include "base/utf_string_conversions.h"
#include "chrome/browser/notifications/balloon.h"
diff --git a/chrome/browser/ui/views/notifications/balloon_view.h b/chrome/browser/ui/views/notifications/balloon_view.h
index 994075d..7372c84 100644
--- a/chrome/browser/ui/views/notifications/balloon_view.h
+++ b/chrome/browser/ui/views/notifications/balloon_view.h
@@ -8,7 +8,7 @@
#define CHROME_BROWSER_UI_VIEWS_NOTIFICATIONS_BALLOON_VIEW_H_
#pragma once
-#include "app/slide_animation.h"
+#include "app/animation_delegate.h"
#include "base/basictypes.h"
#include "base/scoped_ptr.h"
#include "base/task.h"
@@ -39,6 +39,7 @@ class BalloonCollection;
class NotificationDetails;
class NotificationOptionsMenuModel;
class NotificationSource;
+class SlideAnimation;
// A balloon view is the UI component for a desktop notification toasts.
// It draws a border, and within the border an HTML renderer.
diff --git a/chrome/browser/ui/views/page_info_bubble_view.h b/chrome/browser/ui/views/page_info_bubble_view.h
index a2124da..f0df41ff 100644
--- a/chrome/browser/ui/views/page_info_bubble_view.h
+++ b/chrome/browser/ui/views/page_info_bubble_view.h
@@ -6,6 +6,8 @@
#define CHROME_BROWSER_UI_VIEWS_PAGE_INFO_BUBBLE_VIEW_H_
#pragma once
+#include "app/animation_delegate.h"
+#include "app/slide_animation.h"
#include "chrome/browser/page_info_model.h"
#include "chrome/browser/views/info_bubble.h"
#include "views/controls/link.h"
diff --git a/chrome/browser/ui/views/status_bubble_views.cc b/chrome/browser/ui/views/status_bubble_views.cc
index 234b6f0..599e726 100644
--- a/chrome/browser/ui/views/status_bubble_views.cc
+++ b/chrome/browser/ui/views/status_bubble_views.cc
@@ -6,6 +6,7 @@
#include <algorithm>
+#include "app/animation_delegate.h"
#include "app/linear_animation.h"
#include "app/resource_bundle.h"
#include "app/text_elider.h"
diff --git a/chrome/browser/ui/views/tabs/base_tab.h b/chrome/browser/ui/views/tabs/base_tab.h
index ff8cb55..8f47c51 100644
--- a/chrome/browser/ui/views/tabs/base_tab.h
+++ b/chrome/browser/ui/views/tabs/base_tab.h
@@ -6,7 +6,8 @@
#define CHROME_BROWSER_UI_VIEWS_TABS_BASE_TAB_H_
#pragma once
-#include "app/animation.h"
+#include "app/animation_container.h"
+#include "app/animation_delegate.h"
#include "base/ref_counted.h"
#include "base/scoped_ptr.h"
#include "chrome/browser/views/tabs/tab_renderer_data.h"
diff --git a/chrome/browser/ui/views/tabs/dragged_tab_controller.cc b/chrome/browser/ui/views/tabs/dragged_tab_controller.cc
index 3798180..8a3b173 100644
--- a/chrome/browser/ui/views/tabs/dragged_tab_controller.cc
+++ b/chrome/browser/ui/views/tabs/dragged_tab_controller.cc
@@ -8,6 +8,7 @@
#include <set>
#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "app/slide_animation.h"
#include "app/resource_bundle.h"
#include "base/callback.h"
diff --git a/views/animation/bounds_animator.h b/views/animation/bounds_animator.h
index 14aeed3..ce8dcb2 100644
--- a/views/animation/bounds_animator.h
+++ b/views/animation/bounds_animator.h
@@ -8,8 +8,8 @@
#include <map>
-#include "app/animation.h"
#include "app/animation_container.h"
+#include "app/animation_delegate.h"
#include "gfx/rect.h"
class SlideAnimation;
diff --git a/views/controls/button/custom_button.h b/views/controls/button/custom_button.h
index 0126a9e..6e35a3f 100644
--- a/views/controls/button/custom_button.h
+++ b/views/controls/button/custom_button.h
@@ -6,7 +6,7 @@
#define VIEWS_CONTROLS_BUTTON_CUSTOM_BUTTON_H_
#pragma once
-#include "app/animation.h"
+#include "app/animation_delegate.h"
#include "views/controls/button/button.h"
class ThrobAnimation;