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

Unified Diff: chrome/browser/ui/views/apps/native_app_window_views.h

Issue 59043013: Add flag to enable immersive fullscreen for v2 apps (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month 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/apps/native_app_window_views.h
diff --git a/chrome/browser/ui/views/apps/native_app_window_views.h b/chrome/browser/ui/views/apps/native_app_window_views.h
index 39e604e96ab9c66e59908777ee40a40d057ac395..272f8febab1da71da36e54af7ffa7a4cd416896a 100644
--- a/chrome/browser/ui/views/apps/native_app_window_views.h
+++ b/chrome/browser/ui/views/apps/native_app_window_views.h
@@ -20,6 +20,12 @@
#include "chrome/browser/shell_integration.h"
#endif
+#if defined(USE_ASH)
+namespace ash {
+class ImmersiveFullscreenController;
+}
+#endif
+
class ExtensionKeybindingRegistryViews;
class Profile;
@@ -138,8 +144,8 @@ class NativeAppWindowViews : public apps::NativeAppWindow,
virtual bool AcceleratorPressed(const ui::Accelerator& accelerator) OVERRIDE;
// NativeAppWindow implementation.
- virtual void SetFullscreen(bool fullscreen) OVERRIDE;
- virtual bool IsFullscreenOrPending() const OVERRIDE;
+ virtual void SetFullscreen(apps::ShellWindow::FullscreenType type) OVERRIDE;
+ virtual bool SupportsImmersiveFullscreen() const OVERRIDE;
virtual bool IsDetached() const OVERRIDE;
virtual void UpdateWindowIcon() OVERRIDE;
virtual void UpdateWindowTitle() OVERRIDE;
@@ -193,10 +199,19 @@ class NativeAppWindowViews : public apps::NativeAppWindow,
views::UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_;
- base::WeakPtrFactory<NativeAppWindowViews> weak_ptr_factory_;
+#if defined(USE_ASH)
+ // Used to put non-frameless windows into immersive fullscreen on ChromeOS. In
+ // immersive fullscreen, the window header (title bar and window controls)
+ // slides onscreen as an overlay when the mouse is hovered at the top of the
+ // screen.
+ scoped_ptr<ash::ImmersiveFullscreenController>
+ immersive_fullscreen_controller_;
+#endif
ObserverList<web_modal::ModalDialogHostObserver> observer_list_;
+ base::WeakPtrFactory<NativeAppWindowViews> weak_ptr_factory_;
+
DISALLOW_COPY_AND_ASSIGN(NativeAppWindowViews);
};

Powered by Google App Engine
This is Rietveld 408576698