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

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

Issue 2277563002: Wires up immersive mode for chrome and mash (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: feedback Created 4 years, 4 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_ash.h
diff --git a/chrome/browser/ui/views/frame/immersive_mode_controller_ash.h b/chrome/browser/ui/views/frame/immersive_mode_controller_ash.h
index 599752410abc30f6c34a99a1ca67e1c5d9c9376d..4427bff06884f4d64a43a1a4f050cb38688739da 100644
--- a/chrome/browser/ui/views/frame/immersive_mode_controller_ash.h
+++ b/chrome/browser/ui/views/frame/immersive_mode_controller_ash.h
@@ -20,6 +20,8 @@ namespace aura {
class Window;
}
+// See ash/mus/frame/README.md for description of how immersive mode works in
+// mash. This code works with both classic ash, and mash.
class ImmersiveModeControllerAsh
: public ImmersiveModeController,
public ash::ImmersiveFullscreenControllerDelegate,
@@ -57,6 +59,13 @@ class ImmersiveModeControllerAsh
// Returns true if the visibility of the tab indicators has changed.
bool UpdateTabIndicators();
+ // Used when running in mash to create |mash_reveal_widget_|. Does nothing
+ // if already null.
+ void CreateMashRevealWidget();
+
+ // Destroys |mash_reveal_widget_| if valid, does nothing otherwise.
+ void DestroyMashRevealWidget();
+
// ImmersiveFullscreenController::Delegate overrides:
void OnImmersiveRevealStarted() override;
void OnImmersiveRevealEnded() override;
@@ -97,6 +106,10 @@ class ImmersiveModeControllerAsh
// |use_tab_indicators_|.
double visible_fraction_;
+ // When running in mash a widget is created to draw the top container. This
+ // widget does not actually contain the top container, it just renders it.
+ std::unique_ptr<views::Widget> mash_reveal_widget_;
+
content::NotificationRegistrar registrar_;
DISALLOW_COPY_AND_ASSIGN(ImmersiveModeControllerAsh);

Powered by Google App Engine
This is Rietveld 408576698