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 11namespace ash { 12namespace wm { 13class WindowState; 14 15class 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