OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/display/extended_mouse_warp_controller.h" | 5 #include "ash/display/extended_mouse_warp_controller.h" |
6 | 6 |
7 #include <cmath> | 7 #include <cmath> |
8 | 8 |
9 #include "ash/display/display_manager.h" | |
10 #include "ash/display/display_util.h" | 9 #include "ash/display/display_util.h" |
11 #include "ash/display/shared_display_edge_indicator.h" | 10 #include "ash/display/shared_display_edge_indicator.h" |
12 #include "ash/display/window_tree_host_manager.h" | 11 #include "ash/display/window_tree_host_manager.h" |
13 #include "ash/root_window_controller.h" | 12 #include "ash/root_window_controller.h" |
14 #include "ash/shell.h" | 13 #include "ash/shell.h" |
15 #include "base/memory/ptr_util.h" | 14 #include "base/memory/ptr_util.h" |
16 #include "ui/aura/window.h" | 15 #include "ui/aura/window.h" |
17 #include "ui/display/manager/display_layout.h" | 16 #include "ui/display/manager/display_layout.h" |
| 17 #include "ui/display/manager/display_manager.h" |
18 #include "ui/display/manager/display_manager_utilities.h" | 18 #include "ui/display/manager/display_manager_utilities.h" |
19 #include "ui/display/screen.h" | 19 #include "ui/display/screen.h" |
20 #include "ui/events/event_utils.h" | 20 #include "ui/events/event_utils.h" |
21 #include "ui/wm/core/coordinate_conversion.h" | 21 #include "ui/wm/core/coordinate_conversion.h" |
22 | 22 |
23 namespace ash { | 23 namespace ash { |
24 | 24 |
25 namespace { | 25 namespace { |
26 | 26 |
27 // Maximum size on the display edge that initiate snapping phantom window, | 27 // Maximum size on the display edge that initiate snapping phantom window, |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
93 int64_t id) const { | 93 int64_t id) const { |
94 if (a_display_id_ == id) | 94 if (a_display_id_ == id) |
95 return a_indicator_bounds_; | 95 return a_indicator_bounds_; |
96 CHECK_EQ(b_display_id_, id); | 96 CHECK_EQ(b_display_id_, id); |
97 return b_indicator_bounds_; | 97 return b_indicator_bounds_; |
98 } | 98 } |
99 | 99 |
100 ExtendedMouseWarpController::ExtendedMouseWarpController( | 100 ExtendedMouseWarpController::ExtendedMouseWarpController( |
101 aura::Window* drag_source) | 101 aura::Window* drag_source) |
102 : drag_source_root_(drag_source), allow_non_native_event_(false) { | 102 : drag_source_root_(drag_source), allow_non_native_event_(false) { |
103 ash::DisplayManager* display_manager = | 103 display::DisplayManager* display_manager = |
104 Shell::GetInstance()->display_manager(); | 104 Shell::GetInstance()->display_manager(); |
105 int64_t drag_source_id = drag_source ? GetDisplayIdFromWindow(drag_source) | 105 int64_t drag_source_id = drag_source ? GetDisplayIdFromWindow(drag_source) |
106 : display::Display::kInvalidDisplayID; | 106 : display::Display::kInvalidDisplayID; |
107 display::Displays display_list = display_manager->active_display_list(); | 107 display::Displays display_list = display_manager->active_display_list(); |
108 // Try to create a Warp region for all possible two displays combination. | 108 // Try to create a Warp region for all possible two displays combination. |
109 // The following code does it by poping the last element in the list | 109 // The following code does it by poping the last element in the list |
110 // and then pairing with remaining displays in the list, until the list | 110 // and then pairing with remaining displays in the list, until the list |
111 // becomes single element. | 111 // becomes single element. |
112 while (display_list.size() > 1) { | 112 while (display_list.size() > 1) { |
113 display::Display display = display_list.back(); | 113 display::Display display = display_list.back(); |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
217 if (drag_source_id == a.id()) | 217 if (drag_source_id == a.id()) |
218 AdjustSourceEdgeBounds(a.bounds(), snap_barrier, &a_edge); | 218 AdjustSourceEdgeBounds(a.bounds(), snap_barrier, &a_edge); |
219 else if (drag_source_id == b.id()) | 219 else if (drag_source_id == b.id()) |
220 AdjustSourceEdgeBounds(b.bounds(), snap_barrier, &b_edge); | 220 AdjustSourceEdgeBounds(b.bounds(), snap_barrier, &b_edge); |
221 } | 221 } |
222 | 222 |
223 return base::MakeUnique<WarpRegion>(a.id(), b.id(), a_edge, b_edge); | 223 return base::MakeUnique<WarpRegion>(a.id(), b.id(), a_edge, b_edge); |
224 } | 224 } |
225 | 225 |
226 } // namespace ash | 226 } // namespace ash |
OLD | NEW |