Chromium Code Reviews| 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 #include "ash/root_window_controller.h" | 5 #include "ash/root_window_controller.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "ash/desktop_background/desktop_background_widget_controller.h" | 9 #include "ash/desktop_background/desktop_background_widget_controller.h" |
| 10 #include "ash/display/display_controller.h" | 10 #include "ash/display/display_controller.h" |
| (...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 242 | 242 |
| 243 //////////////////////////////////////////////////////////////////////////////// | 243 //////////////////////////////////////////////////////////////////////////////// |
| 244 // RootWindowController, private: | 244 // RootWindowController, private: |
| 245 | 245 |
| 246 void RootWindowController::CreateContainersInRootWindow( | 246 void RootWindowController::CreateContainersInRootWindow( |
| 247 aura::RootWindow* root_window) { | 247 aura::RootWindow* root_window) { |
| 248 // These containers are just used by PowerButtonController to animate groups | 248 // These containers are just used by PowerButtonController to animate groups |
| 249 // of containers simultaneously without messing up the current transformations | 249 // of containers simultaneously without messing up the current transformations |
| 250 // on those containers. These are direct children of the root window; all of | 250 // on those containers. These are direct children of the root window; all of |
| 251 // the other containers are their children. | 251 // the other containers are their children. |
| 252 // Desktop and lock screen background containers are not part of the | 252 // Launcher, desktop and lock screen background containers are not part of the |
| 253 // lock animation so they are not included in those animate groups. | 253 // lock animation so they are not included in those animate groups. |
| 254 // When screen is locked desktop background is moved to lock screen background | 254 // When screen is locked desktop background is moved to lock screen background |
| 255 // container (moved back on unlock). We want to make sure that there's an | 255 // container (moved back on unlock). We want to make sure that there's an |
| 256 // opaque layer occluding the non-lock-screen layers. | 256 // opaque layer occluding the non-lock-screen layers. |
| 257 | 257 |
| 258 CreateContainer(internal::kShellWindowId_SystemBackgroundContainer, | 258 CreateContainer(internal::kShellWindowId_SystemBackgroundContainer, |
| 259 "SystemBackgroundContainer", root_window); | 259 "SystemBackgroundContainer", root_window); |
| 260 | 260 |
| 261 aura::Window* desktop_background_containers = CreateContainer( | 261 aura::Window* desktop_background_containers = CreateContainer( |
| 262 internal::kShellWindowId_DesktopBackgroundContainer, | 262 internal::kShellWindowId_DesktopBackgroundContainer, |
| 263 "DesktopBackgroundContainer", | 263 "DesktopBackgroundContainer", |
| 264 root_window); | 264 root_window); |
| 265 SetChildWindowVisibilityChangesAnimated(desktop_background_containers); | 265 SetChildWindowVisibilityChangesAnimated(desktop_background_containers); |
| 266 | 266 |
| 267 aura::Window* non_lock_screen_containers = CreateContainer( | 267 aura::Window* non_lock_screen_containers = CreateContainer( |
| 268 internal::kShellWindowId_NonLockScreenContainersContainer, | 268 internal::kShellWindowId_NonLockScreenContainersContainer, |
| 269 "NonLockScreenContainersContainer", | 269 "NonLockScreenContainersContainer", |
| 270 root_window); | 270 root_window); |
| 271 | 271 |
| 272 aura::Window* launcher_container = CreateContainer( | |
|
Daniel Erat
2012/09/28 20:48:48
This is a pretty big stacking change, right? Does
Nikita (slow)
2012/09/28 20:55:31
I haven't noticed any in my testing. What specific
Nikita (slow)
2012/10/01 14:58:57
In fact it did. What I've changed was:
* backgrou
| |
| 273 internal::kShellWindowId_LauncherContainer, | |
| 274 "LauncherContainer", | |
| 275 root_window); | |
| 276 SetUsesScreenCoordinates(launcher_container); | |
|
sky
2012/09/28 23:20:28
You should update the ids in shell_window_ids too,
Nikita (slow)
2012/10/01 14:58:57
Due to stacking issues I had to leave root_window_
| |
| 277 | |
| 272 aura::Window* lock_background_containers = CreateContainer( | 278 aura::Window* lock_background_containers = CreateContainer( |
| 273 internal::kShellWindowId_LockScreenBackgroundContainer, | 279 internal::kShellWindowId_LockScreenBackgroundContainer, |
| 274 "LockScreenBackgroundContainer", | 280 "LockScreenBackgroundContainer", |
| 275 root_window); | 281 root_window); |
| 276 SetChildWindowVisibilityChangesAnimated(lock_background_containers); | 282 SetChildWindowVisibilityChangesAnimated(lock_background_containers); |
| 277 | 283 |
| 278 aura::Window* lock_screen_containers = CreateContainer( | 284 aura::Window* lock_screen_containers = CreateContainer( |
| 279 internal::kShellWindowId_LockScreenContainersContainer, | 285 internal::kShellWindowId_LockScreenContainersContainer, |
| 280 "LockScreenContainersContainer", | 286 "LockScreenContainersContainer", |
| 281 root_window); | 287 root_window); |
| (...skipping 25 matching lines...) Expand all Loading... | |
| 307 new ToplevelWindowEventHandler(always_on_top_container)); | 313 new ToplevelWindowEventHandler(always_on_top_container)); |
| 308 SetChildWindowVisibilityChangesAnimated(always_on_top_container); | 314 SetChildWindowVisibilityChangesAnimated(always_on_top_container); |
| 309 SetUsesScreenCoordinates(always_on_top_container); | 315 SetUsesScreenCoordinates(always_on_top_container); |
| 310 | 316 |
| 311 aura::Window* panel_container = CreateContainer( | 317 aura::Window* panel_container = CreateContainer( |
| 312 internal::kShellWindowId_PanelContainer, | 318 internal::kShellWindowId_PanelContainer, |
| 313 "PanelContainer", | 319 "PanelContainer", |
| 314 non_lock_screen_containers); | 320 non_lock_screen_containers); |
| 315 SetUsesScreenCoordinates(panel_container); | 321 SetUsesScreenCoordinates(panel_container); |
| 316 | 322 |
| 317 aura::Window* launcher_container = | |
| 318 CreateContainer(internal::kShellWindowId_LauncherContainer, | |
| 319 "LauncherContainer", | |
| 320 non_lock_screen_containers); | |
| 321 SetUsesScreenCoordinates(launcher_container); | |
| 322 | |
| 323 CreateContainer(internal::kShellWindowId_AppListContainer, | 323 CreateContainer(internal::kShellWindowId_AppListContainer, |
| 324 "AppListContainer", | 324 "AppListContainer", |
| 325 non_lock_screen_containers); | 325 non_lock_screen_containers); |
| 326 | 326 |
| 327 aura::Window* modal_container = CreateContainer( | 327 aura::Window* modal_container = CreateContainer( |
| 328 internal::kShellWindowId_SystemModalContainer, | 328 internal::kShellWindowId_SystemModalContainer, |
| 329 "SystemModalContainer", | 329 "SystemModalContainer", |
| 330 non_lock_screen_containers); | 330 non_lock_screen_containers); |
| 331 modal_container_handler_.reset( | 331 modal_container_handler_.reset( |
| 332 new ToplevelWindowEventHandler(modal_container)); | 332 new ToplevelWindowEventHandler(modal_container)); |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 392 | 392 |
| 393 aura::Window* overlay_container = CreateContainer( | 393 aura::Window* overlay_container = CreateContainer( |
| 394 internal::kShellWindowId_OverlayContainer, | 394 internal::kShellWindowId_OverlayContainer, |
| 395 "OverlayContainer", | 395 "OverlayContainer", |
| 396 lock_screen_related_containers); | 396 lock_screen_related_containers); |
| 397 SetUsesScreenCoordinates(overlay_container); | 397 SetUsesScreenCoordinates(overlay_container); |
| 398 } | 398 } |
| 399 | 399 |
| 400 } // namespace internal | 400 } // namespace internal |
| 401 } // namespace ash | 401 } // namespace ash |
| OLD | NEW |