| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef ASH_PUBLIC_CPP_SHELL_WINDOW_IDS_H_ | 5 #ifndef ASH_PUBLIC_CPP_SHELL_WINDOW_IDS_H_ |
| 6 #define ASH_PUBLIC_CPP_SHELL_WINDOW_IDS_H_ | 6 #define ASH_PUBLIC_CPP_SHELL_WINDOW_IDS_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 | 10 |
| 11 #include "ash/public/cpp/ash_public_export.h" | 11 #include "ash/public/cpp/ash_public_export.h" |
| 12 | 12 |
| 13 // Declarations of ids of special shell windows. | 13 // Declarations of ids of special shell windows. |
| 14 | 14 |
| 15 namespace ash { | 15 namespace ash { |
| 16 | 16 |
| 17 // Used to indicate no shell window id. | 17 // Used to indicate no shell window id. |
| 18 const int32_t kShellWindowId_Invalid = -1; | 18 const int32_t kShellWindowId_Invalid = -1; |
| 19 | 19 |
| 20 // The screen rotation container in between root window and its children, used |
| 21 // for screen rotation animation. |
| 22 const int32_t kShellWindowId_ScreenRotationContainer = 0; |
| 23 |
| 20 // A higher-level container that holds all of the containers stacked below | 24 // A higher-level container that holds all of the containers stacked below |
| 21 // kShellWindowId_LockScreenContainer. Only used by PowerButtonController for | 25 // kShellWindowId_LockScreenContainer. Only used by PowerButtonController for |
| 22 // animating lower-level containers. | 26 // animating lower-level containers. |
| 23 const int32_t kShellWindowId_NonLockScreenContainersContainer = 0; | 27 const int32_t kShellWindowId_NonLockScreenContainersContainer = 1; |
| 24 | 28 |
| 25 // A higher-level container that holds containers that hold lock-screen | 29 // A higher-level container that holds containers that hold lock-screen |
| 26 // windows. Only used by PowerButtonController for animating lower-level | 30 // windows. Only used by PowerButtonController for animating lower-level |
| 27 // containers. | 31 // containers. |
| 28 const int32_t kShellWindowId_LockScreenContainersContainer = 1; | 32 const int32_t kShellWindowId_LockScreenContainersContainer = 2; |
| 29 | 33 |
| 30 // A higher-level container that holds containers that hold lock-screen-related | 34 // A higher-level container that holds containers that hold lock-screen-related |
| 31 // windows (which we want to display while the screen is locked; effectively | 35 // windows (which we want to display while the screen is locked; effectively |
| 32 // containers stacked above kShellWindowId_LockSystemModalContainer). Only used | 36 // containers stacked above kShellWindowId_LockSystemModalContainer). Only used |
| 33 // by PowerButtonController for animating lower-level containers. | 37 // by PowerButtonController for animating lower-level containers. |
| 34 const int32_t kShellWindowId_LockScreenRelatedContainersContainer = 2; | 38 const int32_t kShellWindowId_LockScreenRelatedContainersContainer = 3; |
| 35 | 39 |
| 36 // A container used for windows of WINDOW_TYPE_CONTROL that have no parent. | 40 // A container used for windows of WINDOW_TYPE_CONTROL that have no parent. |
| 37 // This container is not visible. | 41 // This container is not visible. |
| 38 const int32_t kShellWindowId_UnparentedControlContainer = 3; | 42 const int32_t kShellWindowId_UnparentedControlContainer = 4; |
| 39 | 43 |
| 40 // The wallpaper (desktop background) window. | 44 // The wallpaper (desktop background) window. |
| 41 const int32_t kShellWindowId_WallpaperContainer = 4; | 45 const int32_t kShellWindowId_WallpaperContainer = 5; |
| 42 | 46 |
| 43 // The virtual keyboard container. | 47 // The virtual keyboard container. |
| 44 // NOTE: this is lazily created. | 48 // NOTE: this is lazily created. |
| 45 const int32_t kShellWindowId_VirtualKeyboardContainer = 5; | 49 const int32_t kShellWindowId_VirtualKeyboardContainer = 6; |
| 46 | 50 |
| 47 // The container for standard top-level windows. | 51 // The container for standard top-level windows. |
| 48 const int32_t kShellWindowId_DefaultContainer = 6; | 52 const int32_t kShellWindowId_DefaultContainer = 7; |
| 49 | 53 |
| 50 // The container for top-level windows with the 'always-on-top' flag set. | 54 // The container for top-level windows with the 'always-on-top' flag set. |
| 51 const int32_t kShellWindowId_AlwaysOnTopContainer = 7; | 55 const int32_t kShellWindowId_AlwaysOnTopContainer = 8; |
| 52 | 56 |
| 53 // The container for the shelf. | 57 // The container for the shelf. |
| 54 const int32_t kShellWindowId_ShelfContainer = 8; | 58 const int32_t kShellWindowId_ShelfContainer = 9; |
| 55 | 59 |
| 56 // The container for bubbles which float over the shelf. | 60 // The container for bubbles which float over the shelf. |
| 57 const int32_t kShellWindowId_ShelfBubbleContainer = 9; | 61 const int32_t kShellWindowId_ShelfBubbleContainer = 10; |
| 58 | 62 |
| 59 // The container for panel windows. | 63 // The container for panel windows. |
| 60 const int32_t kShellWindowId_PanelContainer = 10; | 64 const int32_t kShellWindowId_PanelContainer = 11; |
| 61 | 65 |
| 62 // The container for the app list. | 66 // The container for the app list. |
| 63 const int32_t kShellWindowId_AppListContainer = 11; | 67 const int32_t kShellWindowId_AppListContainer = 12; |
| 64 | 68 |
| 65 // The container for user-specific modal windows. | 69 // The container for user-specific modal windows. |
| 66 const int32_t kShellWindowId_SystemModalContainer = 12; | 70 const int32_t kShellWindowId_SystemModalContainer = 13; |
| 67 | 71 |
| 68 // The container for the lock screen wallpaper (lock screen background). | 72 // The container for the lock screen wallpaper (lock screen background). |
| 69 const int32_t kShellWindowId_LockScreenWallpaperContainer = 13; | 73 const int32_t kShellWindowId_LockScreenWallpaperContainer = 14; |
| 70 | 74 |
| 71 // The container for the lock screen. | 75 // The container for the lock screen. |
| 72 const int32_t kShellWindowId_LockScreenContainer = 14; | 76 const int32_t kShellWindowId_LockScreenContainer = 15; |
| 73 | 77 |
| 74 // The container for the lock screen modal windows. | 78 // The container for the lock screen modal windows. |
| 75 const int32_t kShellWindowId_LockSystemModalContainer = 15; | 79 const int32_t kShellWindowId_LockSystemModalContainer = 16; |
| 76 | 80 |
| 77 // The container for the status area. | 81 // The container for the status area. |
| 78 const int32_t kShellWindowId_StatusContainer = 16; | 82 const int32_t kShellWindowId_StatusContainer = 17; |
| 79 | 83 |
| 80 // A parent container that holds the virtual keyboard container and ime windows | 84 // A parent container that holds the virtual keyboard container and ime windows |
| 81 // if any. This is to ensure that the virtual keyboard or ime window is stacked | 85 // if any. This is to ensure that the virtual keyboard or ime window is stacked |
| 82 // above most containers but below the mouse cursor and the power off animation. | 86 // above most containers but below the mouse cursor and the power off animation. |
| 83 const int32_t kShellWindowId_ImeWindowParentContainer = 17; | 87 const int32_t kShellWindowId_ImeWindowParentContainer = 18; |
| 84 | 88 |
| 85 // The container for menus. | 89 // The container for menus. |
| 86 const int32_t kShellWindowId_MenuContainer = 18; | 90 const int32_t kShellWindowId_MenuContainer = 19; |
| 87 | 91 |
| 88 // The container for drag/drop images and tooltips. | 92 // The container for drag/drop images and tooltips. |
| 89 const int32_t kShellWindowId_DragImageAndTooltipContainer = 19; | 93 const int32_t kShellWindowId_DragImageAndTooltipContainer = 20; |
| 90 | 94 |
| 91 // The container for bubbles briefly overlaid onscreen to show settings changes | 95 // The container for bubbles briefly overlaid onscreen to show settings changes |
| 92 // (volume, brightness, input method bubbles, etc.). | 96 // (volume, brightness, input method bubbles, etc.). |
| 93 const int32_t kShellWindowId_SettingBubbleContainer = 20; | 97 const int32_t kShellWindowId_SettingBubbleContainer = 21; |
| 94 | 98 |
| 95 // The container for special components overlaid onscreen, such as the | 99 // The container for special components overlaid onscreen, such as the |
| 96 // region selector for partial screenshots. | 100 // region selector for partial screenshots. |
| 97 const int32_t kShellWindowId_OverlayContainer = 21; | 101 const int32_t kShellWindowId_OverlayContainer = 22; |
| 98 | 102 |
| 99 // ID of the window created by PhantomWindowController or DragWindowController. | 103 // ID of the window created by PhantomWindowController or DragWindowController. |
| 100 const int32_t kShellWindowId_PhantomWindow = 22; | 104 const int32_t kShellWindowId_PhantomWindow = 23; |
| 101 | 105 |
| 102 // The container for mouse cursor. | 106 // The container for mouse cursor. |
| 103 const int32_t kShellWindowId_MouseCursorContainer = 23; | 107 const int32_t kShellWindowId_MouseCursorContainer = 24; |
| 104 | 108 |
| 105 // The topmost container, used for power off animation. | 109 // The topmost container, used for power off animation. |
| 106 const int32_t kShellWindowId_PowerButtonAnimationContainer = 24; | 110 const int32_t kShellWindowId_PowerButtonAnimationContainer = 25; |
| 107 | 111 |
| 108 const int32_t kShellWindowId_Min = 0; | 112 const int32_t kShellWindowId_Min = 0; |
| 109 const int32_t kShellWindowId_Max = kShellWindowId_PowerButtonAnimationContainer; | 113 const int32_t kShellWindowId_Max = kShellWindowId_PowerButtonAnimationContainer; |
| 110 | 114 |
| 111 // A list of all the above valid container IDs. Add any new ID to this list. | 115 // A list of all the above valid container IDs. Add any new ID to this list. |
| 112 // This list is needed to validate we have no duplicate IDs. | 116 // This list is needed to validate we have no duplicate IDs. |
| 113 const int32_t kAllShellContainerIds[] = { | 117 const int32_t kAllShellContainerIds[] = { |
| 114 kShellWindowId_NonLockScreenContainersContainer, | 118 kShellWindowId_ScreenRotationContainer, |
| 115 kShellWindowId_LockScreenContainersContainer, | 119 kShellWindowId_NonLockScreenContainersContainer, |
| 116 kShellWindowId_LockScreenRelatedContainersContainer, | 120 kShellWindowId_LockScreenContainersContainer, |
| 117 kShellWindowId_UnparentedControlContainer, | 121 kShellWindowId_LockScreenRelatedContainersContainer, |
| 118 kShellWindowId_WallpaperContainer, | 122 kShellWindowId_UnparentedControlContainer, |
| 119 kShellWindowId_VirtualKeyboardContainer, | 123 kShellWindowId_WallpaperContainer, |
| 120 kShellWindowId_DefaultContainer, | 124 kShellWindowId_VirtualKeyboardContainer, |
| 121 kShellWindowId_AlwaysOnTopContainer, | 125 kShellWindowId_DefaultContainer, |
| 122 kShellWindowId_ShelfContainer, | 126 kShellWindowId_AlwaysOnTopContainer, |
| 123 kShellWindowId_ShelfBubbleContainer, | 127 kShellWindowId_ShelfContainer, |
| 124 kShellWindowId_PanelContainer, | 128 kShellWindowId_ShelfBubbleContainer, |
| 125 kShellWindowId_AppListContainer, | 129 kShellWindowId_PanelContainer, |
| 126 kShellWindowId_SystemModalContainer, | 130 kShellWindowId_AppListContainer, |
| 127 kShellWindowId_LockScreenWallpaperContainer, | 131 kShellWindowId_SystemModalContainer, |
| 128 kShellWindowId_LockScreenContainer, | 132 kShellWindowId_LockScreenWallpaperContainer, |
| 129 kShellWindowId_LockSystemModalContainer, | 133 kShellWindowId_LockScreenContainer, |
| 130 kShellWindowId_StatusContainer, | 134 kShellWindowId_LockSystemModalContainer, |
| 131 kShellWindowId_ImeWindowParentContainer, | 135 kShellWindowId_StatusContainer, |
| 132 kShellWindowId_MenuContainer, | 136 kShellWindowId_ImeWindowParentContainer, |
| 133 kShellWindowId_DragImageAndTooltipContainer, | 137 kShellWindowId_MenuContainer, |
| 134 kShellWindowId_SettingBubbleContainer, | 138 kShellWindowId_DragImageAndTooltipContainer, |
| 135 kShellWindowId_OverlayContainer, | 139 kShellWindowId_SettingBubbleContainer, |
| 136 kShellWindowId_PhantomWindow, | 140 kShellWindowId_OverlayContainer, |
| 137 kShellWindowId_MouseCursorContainer, | 141 kShellWindowId_PhantomWindow, |
| 138 kShellWindowId_PowerButtonAnimationContainer, | 142 kShellWindowId_MouseCursorContainer, |
| 143 kShellWindowId_PowerButtonAnimationContainer, |
| 139 }; | 144 }; |
| 140 | 145 |
| 141 // These are the list of container ids of containers which may contain windows | 146 // These are the list of container ids of containers which may contain windows |
| 142 // that need to be activated. | 147 // that need to be activated. |
| 143 ASH_PUBLIC_EXPORT extern const int32_t kActivatableShellWindowIds[]; | 148 ASH_PUBLIC_EXPORT extern const int32_t kActivatableShellWindowIds[]; |
| 144 ASH_PUBLIC_EXPORT extern const size_t kNumActivatableShellWindowIds; | 149 ASH_PUBLIC_EXPORT extern const size_t kNumActivatableShellWindowIds; |
| 145 | 150 |
| 146 // Returns true if |id| is in |kActivatableShellWindowIds|. | 151 // Returns true if |id| is in |kActivatableShellWindowIds|. |
| 147 ASH_PUBLIC_EXPORT bool IsActivatableShellWindowId(int32_t id); | 152 ASH_PUBLIC_EXPORT bool IsActivatableShellWindowId(int32_t id); |
| 148 | 153 |
| 149 } // namespace ash | 154 } // namespace ash |
| 150 | 155 |
| 151 #endif // ASH_PUBLIC_CPP_SHELL_WINDOW_IDS_H_ | 156 #endif // ASH_PUBLIC_CPP_SHELL_WINDOW_IDS_H_ |
| OLD | NEW |