Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6268)

Unified Diff: chrome/browser/ui/views/frame/immersive_mode_controller.h

Issue 16998006: Add handling for immersive fullscreen to the zoom bubble (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/views/frame/immersive_mode_controller.h
diff --git a/chrome/browser/ui/views/frame/immersive_mode_controller.h b/chrome/browser/ui/views/frame/immersive_mode_controller.h
index 8978e7fbbb90b1f67c386115549cba94e9acef3d..26ced2f7489d7ecd787ecec6ba9713ce2310d68d 100644
--- a/chrome/browser/ui/views/frame/immersive_mode_controller.h
+++ b/chrome/browser/ui/views/frame/immersive_mode_controller.h
@@ -6,6 +6,7 @@
#define CHROME_BROWSER_UI_VIEWS_FRAME_IMMERSIVE_MODE_CONTROLLER_H_
#include "base/compiler_specific.h"
+#include "base/observer_list.h"
class BookmarkBarView;
class FullscreenController;
@@ -39,6 +40,17 @@ class ImmersiveModeController {
ANIMATE_REVEAL_NO
};
+ class Observer {
+ public:
+ virtual ~Observer() {}
sky 2013/06/19 13:32:29 Make this protected.
+
+ // Called when a reveal of the top-of-window views has been initiated.
+ virtual void OnImmersiveRevealStarted() {}
+
+ // Called when the immersive mode controller has been destroyed.
+ virtual void OnImmersiveModeControllerDestroyed() {}
+ };
+
class Delegate {
public:
// Returns the bookmark bar, or NULL if the window does not support one.
@@ -57,7 +69,8 @@ class ImmersiveModeController {
virtual ~Delegate() {}
};
- virtual ~ImmersiveModeController() {}
+ ImmersiveModeController();
+ virtual ~ImmersiveModeController();
// Must initialize after browser view has a Widget and native window.
virtual void Init(Delegate* delegate,
@@ -120,6 +133,15 @@ class ImmersiveModeController {
// Called by the TopContainerView to indicate that its bounds have changed.
virtual void OnTopContainerBoundsChanged() = 0;
+
+ virtual void AddObserver(Observer* observer);
+ virtual void RemoveObserver(Observer* observer);
+
+ protected:
+ ObserverList<Observer> observers_;
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(ImmersiveModeController);
};
namespace chrome {

Powered by Google App Engine
This is Rietveld 408576698