| // Copyright 2017 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module ash.mojom; |
| |
| // A superset of ui.mojom.ShowState. Ash has more states than the general |
| // ui::ShowState enum. These need to be communicated back to chrome. |
| // The separate enum is defined here because we don't want to leak |
| // these type to ui/base until they're stable and we know for sure |
| // that they'll persist over time. |
| enum WindowStateType { |
| // States which correspond to ui.mojom.ShowState. |
| DEFAULT, |
| NORMAL, |
| MINIMIZED, |
| MAXIMIZED, |
| INACTIVE, |
| FULLSCREEN, |
| |
| // Additional ash states. |
| LEFT_SNAPPED, |
| RIGHT_SNAPPED, |
| |
| // A window is in this state when it is automatically placed and |
| // sized by the window manager. (it's newly opened, or pushed to the side |
| // due to new window, for example). |
| AUTO_POSITIONED, |
| |
| // A window is pinned on top of other windows with fullscreenized. |
| // Corresponding shelf should be hidden, also most of windows other than the |
| // pinned one should be hidden. |
| PINNED, |
| TRUSTED_PINNED, |
| }; |
| |
| // The window's extended state. Maps to ash::aura::kWindowStateTypeKey. |
| const string kWindowStateType_Property = "ash:window-state-type"; |