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 <queue> | 7 #include <queue> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "ash/ash_constants.h" | 10 #include "ash/ash_constants.h" |
| (...skipping 838 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 849 lock_background_container->AddChild(mouse_event_target_.get()); | 849 lock_background_container->AddChild(mouse_event_target_.get()); |
| 850 mouse_event_target_->Show(); | 850 mouse_event_target_->Show(); |
| 851 } | 851 } |
| 852 | 852 |
| 853 // Create Docked windows layout manager | 853 // Create Docked windows layout manager |
| 854 aura::Window* docked_container = GetContainer(kShellWindowId_DockedContainer); | 854 aura::Window* docked_container = GetContainer(kShellWindowId_DockedContainer); |
| 855 docked_layout_manager_ = | 855 docked_layout_manager_ = |
| 856 new DockedWindowLayoutManager(docked_container, workspace_controller()); | 856 new DockedWindowLayoutManager(docked_container, workspace_controller()); |
| 857 docked_container->SetLayoutManager(docked_layout_manager_); | 857 docked_container->SetLayoutManager(docked_layout_manager_); |
| 858 | 858 |
| 859 // Installs SnapLayoutManager to containers who set the | |
| 860 // |kSnapsChildrenToPhysicalPixelBoundary| property. | |
| 861 wm::InstallSnapLayoutManagerToContainers(root_window); | |
| 862 | |
|
Jun Mukai
2014/07/16 22:59:08
Not sure why this is necessary. Instead of settin
oshima
2014/07/17 22:07:56
Because some containers may install its own layout
Jun Mukai
2014/07/17 22:26:31
Hmm, I don't get the point.
If a container with t
Jun Mukai
2014/07/17 22:27:16
ah, your new patchset is in this way. Thanks for q
oshima
2014/07/17 22:28:40
Sorry, I should have mentioned that.
| |
| 859 // Create Panel layout manager | 863 // Create Panel layout manager |
| 860 aura::Window* panel_container = GetContainer(kShellWindowId_PanelContainer); | 864 aura::Window* panel_container = GetContainer(kShellWindowId_PanelContainer); |
| 861 panel_layout_manager_ = new PanelLayoutManager(panel_container); | 865 panel_layout_manager_ = new PanelLayoutManager(panel_container); |
| 862 panel_container->SetLayoutManager(panel_layout_manager_); | 866 panel_container->SetLayoutManager(panel_layout_manager_); |
| 863 panel_container_handler_.reset(new PanelWindowEventHandler); | 867 panel_container_handler_.reset(new PanelWindowEventHandler); |
| 864 panel_container->AddPreTargetHandler(panel_container_handler_.get()); | 868 panel_container->AddPreTargetHandler(panel_container_handler_.get()); |
| 865 | 869 |
| 866 // Install an AttachedPanelWindowTargeter on the panel container to make it | 870 // Install an AttachedPanelWindowTargeter on the panel container to make it |
| 867 // easier to correctly target shelf buttons with touch. | 871 // easier to correctly target shelf buttons with touch. |
| 868 gfx::Insets mouse_extend(-kResizeOutsideBoundsSize, | 872 gfx::Insets mouse_extend(-kResizeOutsideBoundsSize, |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 977 CreateContainer(kShellWindowId_ShelfContainer, | 981 CreateContainer(kShellWindowId_ShelfContainer, |
| 978 "ShelfContainer", | 982 "ShelfContainer", |
| 979 non_lock_screen_containers); | 983 non_lock_screen_containers); |
| 980 SetUsesScreenCoordinates(shelf_container); | 984 SetUsesScreenCoordinates(shelf_container); |
| 981 DescendantShouldStayInSameRootWindow(shelf_container); | 985 DescendantShouldStayInSameRootWindow(shelf_container); |
| 982 | 986 |
| 983 aura::Window* panel_container = CreateContainer( | 987 aura::Window* panel_container = CreateContainer( |
| 984 kShellWindowId_PanelContainer, | 988 kShellWindowId_PanelContainer, |
| 985 "PanelContainer", | 989 "PanelContainer", |
| 986 non_lock_screen_containers); | 990 non_lock_screen_containers); |
| 991 wm::SetSnapsChildrenToPhysicalPixelBoundary(panel_container); | |
| 987 SetUsesScreenCoordinates(panel_container); | 992 SetUsesScreenCoordinates(panel_container); |
| 988 | 993 |
| 989 aura::Window* shelf_bubble_container = | 994 aura::Window* shelf_bubble_container = |
| 990 CreateContainer(kShellWindowId_ShelfBubbleContainer, | 995 CreateContainer(kShellWindowId_ShelfBubbleContainer, |
| 991 "ShelfBubbleContainer", | 996 "ShelfBubbleContainer", |
| 992 non_lock_screen_containers); | 997 non_lock_screen_containers); |
| 998 wm::SetSnapsChildrenToPhysicalPixelBoundary(shelf_bubble_container); | |
| 993 SetUsesScreenCoordinates(shelf_bubble_container); | 999 SetUsesScreenCoordinates(shelf_bubble_container); |
| 994 DescendantShouldStayInSameRootWindow(shelf_bubble_container); | 1000 DescendantShouldStayInSameRootWindow(shelf_bubble_container); |
| 995 | 1001 |
| 996 aura::Window* app_list_container = | 1002 aura::Window* app_list_container = |
| 997 CreateContainer(kShellWindowId_AppListContainer, | 1003 CreateContainer(kShellWindowId_AppListContainer, |
| 998 "AppListContainer", | 1004 "AppListContainer", |
| 999 non_lock_screen_containers); | 1005 non_lock_screen_containers); |
| 1006 wm::SetSnapsChildrenToPhysicalPixelBoundary(app_list_container); | |
| 1000 SetUsesScreenCoordinates(app_list_container); | 1007 SetUsesScreenCoordinates(app_list_container); |
| 1001 | 1008 |
| 1002 aura::Window* modal_container = CreateContainer( | 1009 aura::Window* modal_container = CreateContainer( |
| 1003 kShellWindowId_SystemModalContainer, | 1010 kShellWindowId_SystemModalContainer, |
| 1004 "SystemModalContainer", | 1011 "SystemModalContainer", |
| 1005 non_lock_screen_containers); | 1012 non_lock_screen_containers); |
| 1006 modal_container->SetLayoutManager( | 1013 modal_container->SetLayoutManager( |
| 1007 new SystemModalContainerLayoutManager(modal_container)); | 1014 new SystemModalContainerLayoutManager(modal_container)); |
| 1008 ::wm::SetChildWindowVisibilityChangesAnimated(modal_container); | 1015 ::wm::SetChildWindowVisibilityChangesAnimated(modal_container); |
| 1009 SetUsesScreenCoordinates(modal_container); | 1016 SetUsesScreenCoordinates(modal_container); |
| (...skipping 30 matching lines...) Expand all Loading... | |
| 1040 "StatusContainer", | 1047 "StatusContainer", |
| 1041 lock_screen_related_containers); | 1048 lock_screen_related_containers); |
| 1042 SetUsesScreenCoordinates(status_container); | 1049 SetUsesScreenCoordinates(status_container); |
| 1043 DescendantShouldStayInSameRootWindow(status_container); | 1050 DescendantShouldStayInSameRootWindow(status_container); |
| 1044 | 1051 |
| 1045 aura::Window* settings_bubble_container = CreateContainer( | 1052 aura::Window* settings_bubble_container = CreateContainer( |
| 1046 kShellWindowId_SettingBubbleContainer, | 1053 kShellWindowId_SettingBubbleContainer, |
| 1047 "SettingBubbleContainer", | 1054 "SettingBubbleContainer", |
| 1048 lock_screen_related_containers); | 1055 lock_screen_related_containers); |
| 1049 ::wm::SetChildWindowVisibilityChangesAnimated(settings_bubble_container); | 1056 ::wm::SetChildWindowVisibilityChangesAnimated(settings_bubble_container); |
| 1057 wm::SetSnapsChildrenToPhysicalPixelBoundary(settings_bubble_container); | |
| 1050 SetUsesScreenCoordinates(settings_bubble_container); | 1058 SetUsesScreenCoordinates(settings_bubble_container); |
| 1051 DescendantShouldStayInSameRootWindow(settings_bubble_container); | 1059 DescendantShouldStayInSameRootWindow(settings_bubble_container); |
| 1052 | 1060 |
| 1053 aura::Window* menu_container = CreateContainer( | 1061 aura::Window* menu_container = CreateContainer( |
| 1054 kShellWindowId_MenuContainer, | 1062 kShellWindowId_MenuContainer, |
| 1055 "MenuContainer", | 1063 "MenuContainer", |
| 1056 lock_screen_related_containers); | 1064 lock_screen_related_containers); |
| 1057 ::wm::SetChildWindowVisibilityChangesAnimated(menu_container); | 1065 ::wm::SetChildWindowVisibilityChangesAnimated(menu_container); |
| 1066 wm::SetSnapsChildrenToPhysicalPixelBoundary(menu_container); | |
| 1058 SetUsesScreenCoordinates(menu_container); | 1067 SetUsesScreenCoordinates(menu_container); |
| 1059 | 1068 |
| 1060 aura::Window* drag_drop_container = CreateContainer( | 1069 aura::Window* drag_drop_container = CreateContainer( |
| 1061 kShellWindowId_DragImageAndTooltipContainer, | 1070 kShellWindowId_DragImageAndTooltipContainer, |
| 1062 "DragImageAndTooltipContainer", | 1071 "DragImageAndTooltipContainer", |
| 1063 lock_screen_related_containers); | 1072 lock_screen_related_containers); |
| 1064 ::wm::SetChildWindowVisibilityChangesAnimated(drag_drop_container); | 1073 ::wm::SetChildWindowVisibilityChangesAnimated(drag_drop_container); |
| 1074 wm::SetSnapsChildrenToPhysicalPixelBoundary(drag_drop_container); | |
| 1065 SetUsesScreenCoordinates(drag_drop_container); | 1075 SetUsesScreenCoordinates(drag_drop_container); |
| 1066 | 1076 |
| 1067 aura::Window* overlay_container = CreateContainer( | 1077 aura::Window* overlay_container = CreateContainer( |
| 1068 kShellWindowId_OverlayContainer, | 1078 kShellWindowId_OverlayContainer, |
| 1069 "OverlayContainer", | 1079 "OverlayContainer", |
| 1070 lock_screen_related_containers); | 1080 lock_screen_related_containers); |
| 1081 wm::SetSnapsChildrenToPhysicalPixelBoundary(overlay_container); | |
| 1071 SetUsesScreenCoordinates(overlay_container); | 1082 SetUsesScreenCoordinates(overlay_container); |
| 1072 | 1083 |
| 1073 aura::Window* virtual_keyboard_parent_container = CreateContainer( | 1084 aura::Window* virtual_keyboard_parent_container = CreateContainer( |
| 1074 kShellWindowId_VirtualKeyboardParentContainer, | 1085 kShellWindowId_VirtualKeyboardParentContainer, |
| 1075 "VirtualKeyboardParentContainer", | 1086 "VirtualKeyboardParentContainer", |
| 1076 root_window); | 1087 root_window); |
| 1088 wm::SetSnapsChildrenToPhysicalPixelBoundary( | |
| 1089 virtual_keyboard_parent_container); | |
| 1077 SetUsesScreenCoordinates(virtual_keyboard_parent_container); | 1090 SetUsesScreenCoordinates(virtual_keyboard_parent_container); |
| 1078 | 1091 |
| 1079 #if defined(OS_CHROMEOS) | 1092 #if defined(OS_CHROMEOS) |
| 1080 aura::Window* mouse_cursor_container = CreateContainer( | 1093 aura::Window* mouse_cursor_container = CreateContainer( |
| 1081 kShellWindowId_MouseCursorContainer, | 1094 kShellWindowId_MouseCursorContainer, |
| 1082 "MouseCursorContainer", | 1095 "MouseCursorContainer", |
| 1083 root_window); | 1096 root_window); |
| 1084 SetUsesScreenCoordinates(mouse_cursor_container); | 1097 SetUsesScreenCoordinates(mouse_cursor_container); |
| 1085 #endif | 1098 #endif |
| 1086 | 1099 |
| (...skipping 23 matching lines...) Expand all Loading... | |
| 1110 else | 1123 else |
| 1111 DisableTouchHudProjection(); | 1124 DisableTouchHudProjection(); |
| 1112 } | 1125 } |
| 1113 | 1126 |
| 1114 RootWindowController* GetRootWindowController( | 1127 RootWindowController* GetRootWindowController( |
| 1115 const aura::Window* root_window) { | 1128 const aura::Window* root_window) { |
| 1116 return root_window ? GetRootWindowSettings(root_window)->controller : NULL; | 1129 return root_window ? GetRootWindowSettings(root_window)->controller : NULL; |
| 1117 } | 1130 } |
| 1118 | 1131 |
| 1119 } // namespace ash | 1132 } // namespace ash |
| OLD | NEW |