1c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// Use of this source code is governed by a BSD-style license that can be
3c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// found in the LICENSE file.
4c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
5c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#ifndef ASH_SHELL_WINDOW_IDS_H_
6c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#define ASH_SHELL_WINDOW_IDS_H_
7c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
8c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// Declarations of ids of special shell windows.
9c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
10c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Querunamespace ash {
11c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
12c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// TODO: we're using this in random places outside of ash, it shouldn't be in
13c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// internal.
14c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Querunamespace internal {
15c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
16c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// A higher-level container that holds all of the containers stacked below
17c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// kShellWindowId_LockScreenContainer.  Only used by PowerButtonController for
18c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// animating lower-level containers.
19c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_NonLockScreenContainersContainer = 0;
20c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
21c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// A higher-level container that holds containers that hold lock-screen
22c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// windows.  Only used by PowerButtonController for animating lower-level
23c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// containers.
24c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_LockScreenContainersContainer = 1;
25c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
26c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// A higher-level container that holds containers that hold lock-screen-related
27c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// windows (which we want to display while the screen is locked; effectively
28c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// containers stacked above kShellWindowId_LockSystemModalContainer).  Only used
29c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// by PowerButtonController for animating lower-level containers.
30c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_LockScreenRelatedContainersContainer = 2;
31c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
32c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// A container used for windows of WINDOW_TYPE_CONTROL that have no parent.
33c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// This container is not visible.
34c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_UnparentedControlContainer = 3;
35c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
36c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The desktop background window.
37c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_DesktopBackgroundContainer = 4;
38c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
39c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The virtual keyboard container.
40c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_VirtualKeyboardContainer = 5;
41c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
42c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// TODO(sky): rename kShellWindowId_DefaultContainer.
43c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
44c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for standard top-level windows.
45c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_DefaultContainer = 6;
46c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
47c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for top-level windows with the 'always-on-top' flag set.
48c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_AlwaysOnTopContainer = 7;
49c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
50c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for windows docked to either side of the desktop.
51c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_DockedContainer = 8;
52c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
53c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for the shelf.
54c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_ShelfContainer = 9;
55c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
56c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for bubbles which float over the shelf.
57c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_ShelfBubbleContainer = 10;
58c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
59c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for panel windows.
60c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_PanelContainer = 11;
61c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
62c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for the app list.
63c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_AppListContainer = 12;
64c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
65c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for user-specific modal windows.
66c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_SystemModalContainer = 13;
67c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
68c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for input method components such like candidate windows.  They
69c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// are almost panels but have no activations/focus, and they should appear over
70c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// the AppList and SystemModal dialogs.
71c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_InputMethodContainer = 14;
72c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
73c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for the lock screen background.
74c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_LockScreenBackgroundContainer = 15;
75c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
76c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for the lock screen.
77c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_LockScreenContainer = 16;
78c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
79c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for the lock screen modal windows.
80c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_LockSystemModalContainer = 17;
81c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
82c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for the status area.
83c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_StatusContainer = 18;
84c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
85c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for menus.
86c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_MenuContainer = 19;
87c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
88c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for drag/drop images and tooltips.
89c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_DragImageAndTooltipContainer = 20;
90c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
91c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for bubbles briefly overlaid onscreen to show settings changes
92c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// (volume, brightness, etc.).
93c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_SettingBubbleContainer = 21;
94c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
95c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The container for special components overlaid onscreen, such as the
96c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// region selector for partial screenshots.
97c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_OverlayContainer = 22;
98c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
99c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// ID of the window created by PhantomWindowController or DragWindowController.
100c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_PhantomWindow = 23;
101c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
102c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru// The topmost container, used for power off animation.
103c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queruconst int kShellWindowId_PowerButtonAnimationContainer = 24;
104c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
105c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru}  // namespace internal
106c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
107c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru}  // namespace ash
108c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
109c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru
110c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru#endif  // ASH_SHELL_WINDOW_IDS_H_
111c559cd81139f97cecad1ad91a0b2e25a5936d53Jean-Baptiste Queru