| Index: chrome/browser/views/toolbar_view.h
|
| ===================================================================
|
| --- chrome/browser/views/toolbar_view.h (revision 48146)
|
| +++ chrome/browser/views/toolbar_view.h (working copy)
|
| @@ -8,6 +8,7 @@
|
| #include <vector>
|
|
|
| #include "app/menus/simple_menu_model.h"
|
| +#include "app/slide_animation.h"
|
| #include "base/scoped_ptr.h"
|
| #include "chrome/browser/app_menu_model.h"
|
| #include "chrome/browser/back_forward_menu_model.h"
|
| @@ -38,6 +39,7 @@
|
| public views::FocusChangeListener,
|
| public menus::SimpleMenuModel::Delegate,
|
| public LocationBarView::Delegate,
|
| + public AnimationDelegate,
|
| public NotificationObserver,
|
| public CommandUpdater::CommandObserver,
|
| public views::ButtonListener {
|
| @@ -107,6 +109,9 @@
|
| virtual TabContents* GetTabContents();
|
| virtual void OnInputInProgress(bool in_progress);
|
|
|
| + // Overridden from AnimationDelegate:
|
| + virtual void AnimationProgressed(const Animation* animation);
|
| +
|
| // Overridden from CommandUpdater::CommandObserver:
|
| virtual void EnabledStateChangedForCommand(int id, bool enabled);
|
|
|
| @@ -173,6 +178,17 @@
|
| // was called.
|
| void RestoreLastFocusedView();
|
|
|
| + // Starts the recurring timer that periodically asks the upgrade notifier
|
| + // to pulsate.
|
| + void ShowUpgradeReminder();
|
| +
|
| + // Show the reminder, tempting the user to upgrade by pulsating.
|
| + void PulsateUpgradeNotifier();
|
| +
|
| + // Gets a canvas with the icon for the app menu. It will possibly contain
|
| + // an overlaid badge if an update is recommended.
|
| + SkBitmap GetAppMenuIcon();
|
| +
|
| scoped_ptr<BackForwardMenuModel> back_menu_model_;
|
| scoped_ptr<BackForwardMenuModel> forward_menu_model_;
|
|
|
| @@ -222,6 +238,13 @@
|
| // Vector of listeners to receive callbacks when the menu opens.
|
| std::vector<views::MenuListener*> menu_listeners_;
|
|
|
| + // The animation that makes the update reminder pulse.
|
| + scoped_ptr<SlideAnimation> update_reminder_animation_;
|
| +
|
| + // We periodically restart the animation after it has been showed
|
| + // once, to create a pulsating effect.
|
| + base::RepeatingTimer<ToolbarView> upgrade_reminder_pulse_timer_;
|
| +
|
| // Are we in the menu bar emulation mode, where the app and page menu
|
| // are temporarily focusable?
|
| bool menu_bar_emulation_mode_;
|
| @@ -229,7 +252,9 @@
|
| // Used to post tasks to switch to the next/previous menu.
|
| ScopedRunnableMethodFactory<ToolbarView> method_factory_;
|
|
|
| - // If non-null the destuctor sets this to true. This is set to a non-null
|
| + NotificationRegistrar registrar_;
|
| +
|
| + // If non-null the destructor sets this to true. This is set to a non-null
|
| // while the menu is showing and used to detect if the menu was deleted while
|
| // running.
|
| bool* destroyed_flag_;
|
|
|