Permission message rules: Each rule must have >= 1 required permissions
[chromium-blink-merge.git] / ash / wm / wm_types.cc
blobfe04b953b79acb0940529be47d6e28ccca284485
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.
5 #include "ash/wm/wm_types.h"
7 #include "base/basictypes.h"
8 #include "base/logging.h"
10 namespace ash {
11 namespace wm {
13 // This is to catch the change to WindowShowState.
14 static_assert(ui::SHOW_STATE_END ==
15 static_cast<ui::WindowShowState>(WINDOW_STATE_TYPE_END),
16 "show enum mismatch");
18 WindowStateType ToWindowStateType(ui::WindowShowState state) {
19 return static_cast<WindowStateType>(state);
22 ui::WindowShowState ToWindowShowState(WindowStateType type) {
23 switch (type) {
24 case WINDOW_STATE_TYPE_DEFAULT:
25 return ui::SHOW_STATE_DEFAULT;
26 case WINDOW_STATE_TYPE_NORMAL:
27 case WINDOW_STATE_TYPE_RIGHT_SNAPPED:
28 case WINDOW_STATE_TYPE_LEFT_SNAPPED:
29 case WINDOW_STATE_TYPE_AUTO_POSITIONED:
30 return ui::SHOW_STATE_NORMAL;
31 case WINDOW_STATE_TYPE_DOCKED:
32 return ui::SHOW_STATE_DOCKED;
33 case WINDOW_STATE_TYPE_MINIMIZED:
34 case WINDOW_STATE_TYPE_DOCKED_MINIMIZED:
35 return ui::SHOW_STATE_MINIMIZED;
36 case WINDOW_STATE_TYPE_MAXIMIZED:
37 return ui::SHOW_STATE_MAXIMIZED;
38 case WINDOW_STATE_TYPE_INACTIVE:
39 return ui::SHOW_STATE_INACTIVE;
40 case WINDOW_STATE_TYPE_FULLSCREEN:
41 return ui::SHOW_STATE_FULLSCREEN;
42 case WINDOW_STATE_TYPE_END:
43 NOTREACHED();
45 NOTREACHED();
46 return ui::SHOW_STATE_DEFAULT;
49 bool IsMaximizedOrFullscreenWindowStateType(WindowStateType type) {
50 return type == WINDOW_STATE_TYPE_MAXIMIZED ||
51 type == WINDOW_STATE_TYPE_FULLSCREEN;
54 } // namespace wm
55 } // namespace ash