1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef ASH_WM_WINDOW_STATE_DELEGATE_H_ 6 #define ASH_WM_WINDOW_STATE_DELEGATE_H_ 7 8 #include "ash/ash_export.h" 9 #include "base/basictypes.h" 10 11 namespace ash { 12 namespace wm { 13 class WindowState; 14 15 class ASH_EXPORT WindowStateDelegate { 16 public: 17 WindowStateDelegate(); 18 virtual ~WindowStateDelegate(); 19 20 // Invoked when the user uses Shift+F4/F4 to toggle the window fullscreen 21 // state. If the window is not fullscreen and the window supports immersive 22 // fullscreen ToggleFullscreen() should put the window into immersive 23 // fullscreen instead of the default fullscreen type. The caller 24 // (ash::wm::WindowState) falls backs to the default implementation if this 25 // returns false. 26 virtual bool ToggleFullscreen(WindowState* window_state); 27 28 private: 29 DISALLOW_COPY_AND_ASSIGN(WindowStateDelegate); 30 }; 31 32 } // namespace wm 33 } // namespace ash 34 35 #endif // ASH_WM_WINDOW_STATE_DELEGATE_H_ 36