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 "components/exo/shell_surface.h" | 5 #include "components/exo/shell_surface.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "ash/frame/custom_frame_view_ash.h" | 9 #include "ash/frame/custom_frame_view_ash.h" |
10 #include "ash/public/cpp/shelf_types.h" | 10 #include "ash/public/cpp/shelf_types.h" |
11 #include "ash/public/cpp/shell_window_ids.h" | 11 #include "ash/public/cpp/shell_window_ids.h" |
12 #include "ash/public/cpp/window_properties.h" | 12 #include "ash/public/cpp/window_properties.h" |
13 #include "ash/public/interfaces/window_pin_type.mojom.h" | 13 #include "ash/public/interfaces/window_pin_type.mojom.h" |
14 #include "ash/shell_port.h" | |
15 #include "ash/wm/drag_window_resizer.h" | 14 #include "ash/wm/drag_window_resizer.h" |
16 #include "ash/wm/window_resizer.h" | 15 #include "ash/wm/window_resizer.h" |
17 #include "ash/wm/window_state.h" | 16 #include "ash/wm/window_state.h" |
18 #include "ash/wm/window_util.h" | 17 #include "ash/wm/window_util.h" |
19 #include "base/logging.h" | 18 #include "base/logging.h" |
20 #include "base/macros.h" | 19 #include "base/macros.h" |
21 #include "base/memory/ptr_util.h" | 20 #include "base/memory/ptr_util.h" |
22 #include "base/strings/utf_string_conversions.h" | 21 #include "base/strings/utf_string_conversions.h" |
23 #include "base/trace_event/trace_event.h" | 22 #include "base/trace_event/trace_event.h" |
24 #include "base/trace_event/trace_event_argument.h" | 23 #include "base/trace_event/trace_event_argument.h" |
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
146 views::Widget* const widget_; | 145 views::Widget* const widget_; |
147 | 146 |
148 DISALLOW_COPY_AND_ASSIGN(CustomWindowTargeter); | 147 DISALLOW_COPY_AND_ASSIGN(CustomWindowTargeter); |
149 }; | 148 }; |
150 | 149 |
151 // Minimal WindowResizer that unlike DefaultWindowResizer does not handle | 150 // Minimal WindowResizer that unlike DefaultWindowResizer does not handle |
152 // dragging and resizing windows. | 151 // dragging and resizing windows. |
153 class CustomWindowResizer : public ash::WindowResizer { | 152 class CustomWindowResizer : public ash::WindowResizer { |
154 public: | 153 public: |
155 explicit CustomWindowResizer(ash::wm::WindowState* window_state) | 154 explicit CustomWindowResizer(ash::wm::WindowState* window_state) |
156 : WindowResizer(window_state) { | 155 : WindowResizer(window_state) {} |
157 ash::ShellPort::Get()->LockCursor(); | |
158 } | |
159 ~CustomWindowResizer() override { ash::ShellPort::Get()->UnlockCursor(); } | |
160 | 156 |
161 // Overridden from ash::WindowResizer: | 157 // Overridden from ash::WindowResizer: |
162 void Drag(const gfx::Point& location, int event_flags) override {} | 158 void Drag(const gfx::Point& location, int event_flags) override {} |
163 void CompleteDrag() override {} | 159 void CompleteDrag() override {} |
164 void RevertDrag() override {} | 160 void RevertDrag() override {} |
165 | 161 |
166 private: | 162 private: |
167 DISALLOW_COPY_AND_ASSIGN(CustomWindowResizer); | 163 DISALLOW_COPY_AND_ASSIGN(CustomWindowResizer); |
168 }; | 164 }; |
169 | 165 |
(...skipping 1499 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1669 gfx::Point ShellSurface::GetMouseLocation() const { | 1665 gfx::Point ShellSurface::GetMouseLocation() const { |
1670 aura::Window* const root_window = widget_->GetNativeWindow()->GetRootWindow(); | 1666 aura::Window* const root_window = widget_->GetNativeWindow()->GetRootWindow(); |
1671 gfx::Point location = | 1667 gfx::Point location = |
1672 root_window->GetHost()->dispatcher()->GetLastMouseLocationInRoot(); | 1668 root_window->GetHost()->dispatcher()->GetLastMouseLocationInRoot(); |
1673 aura::Window::ConvertPointToTarget( | 1669 aura::Window::ConvertPointToTarget( |
1674 root_window, widget_->GetNativeWindow()->parent(), &location); | 1670 root_window, widget_->GetNativeWindow()->parent(), &location); |
1675 return location; | 1671 return location; |
1676 } | 1672 } |
1677 | 1673 |
1678 } // namespace exo | 1674 } // namespace exo |
OLD | NEW |