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

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: Fix ZoomBubbleBrowserTest.NonImmersiveFullscreen 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
« no previous file with comments | « no previous file | chrome/browser/ui/views/frame/immersive_mode_controller.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 ae8a0eb3b5093fb41141fec5694821be2be2fe37..81da8d862d85de9370091a260be5efb9d20d58ac 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;
@@ -40,6 +41,18 @@ class ImmersiveModeController {
ANIMATE_REVEAL_NO
};
+ class Observer {
+ public:
+ // 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() {}
+
+ protected:
+ virtual ~Observer() {}
+ };
+
class Delegate {
public:
// Returns the bookmark bar, or NULL if the window does not support one.
@@ -58,7 +71,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,
@@ -127,6 +141,15 @@ class ImmersiveModeController {
// visible.
virtual void OnFindBarVisibleBoundsChanged(
const gfx::Rect& new_visible_bounds_in_screen) = 0;
+
+ virtual void AddObserver(Observer* observer);
+ virtual void RemoveObserver(Observer* observer);
+
+ protected:
+ ObserverList<Observer> observers_;
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(ImmersiveModeController);
};
namespace chrome {
« no previous file with comments | « no previous file | chrome/browser/ui/views/frame/immersive_mode_controller.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698