1// Copyright (c) 2012 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_PROPERTIES_H_ 6#define ASH_WM_WINDOW_PROPERTIES_H_ 7 8#include "ash/ash_export.h" 9#include "ui/base/ui_base_types.h" 10#include "ui/gfx/rect.h" 11 12namespace aura { 13class Window; 14 15template<typename T> 16struct WindowProperty; 17} 18 19namespace ash { 20namespace wm { 21class WindowState; 22} // namespace wm 23 24// Shell-specific window property keys. 25 26// Alphabetical sort. 27 28// A property key which stores the bounds to restore a window to. These take 29// preference over the current bounds/state. This is used by e.g. the always 30// maximized mode window manager. 31ASH_EXPORT extern const aura::WindowProperty<gfx::Rect*>* const 32 kRestoreBoundsOverrideKey; 33 34// A property key which stores the bounds to restore a window to. These take 35// preference over the current bounds/state if |kRestoreBoundsOverrideKey| is 36// set. This is used by e.g. the always maximized mode window manager. 37ASH_EXPORT extern const aura::WindowProperty<ui::WindowShowState>* const 38 kRestoreShowStateOverrideKey; 39 40// Containers with this property (true) are aligned with physical pixel 41// boundary. 42extern const aura::WindowProperty<bool>* const kSnapChildrenToPixelBoundary; 43 44// If this is set to true, the window stays in the same root window 45// even if the bounds outside of its root window is set. 46// This is exported as it's used in the tests. 47ASH_EXPORT extern const aura::WindowProperty<bool>* const 48 kStayInSameRootWindowKey; 49 50// Property to tell if the container uses the screen coordinates. 51extern const aura::WindowProperty<bool>* const kUsesScreenCoordinatesKey; 52 53// A property key to store WindowState in the window. The window state 54// is owned by the window. 55extern const aura::WindowProperty<wm::WindowState*>* const kWindowStateKey; 56 57// Alphabetical sort. 58 59} // namespace ash 60 61#endif // ASH_WM_WINDOW_PROPERTIES_H_ 62