| 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/shell_window_ids.h" | 10 #include "ash/public/cpp/shell_window_ids.h" |
| 11 #include "ash/public/cpp/window_properties.h" | 11 #include "ash/public/cpp/window_properties.h" |
| 12 #include "ash/public/interfaces/window_pin_type.mojom.h" | 12 #include "ash/public/interfaces/window_pin_type.mojom.h" |
| 13 #include "ash/shelf/wm_shelf.h" | 13 #include "ash/shelf/wm_shelf.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_state_aura.h" | 17 #include "ash/wm/window_state_aura.h" |
| 19 #include "ash/wm/window_util.h" | 18 #include "ash/wm/window_util.h" |
| 20 #include "ash/wm_window.h" | 19 #include "ash/wm_window.h" |
| 21 #include "base/logging.h" | 20 #include "base/logging.h" |
| 22 #include "base/macros.h" | 21 #include "base/macros.h" |
| 23 #include "base/memory/ptr_util.h" | 22 #include "base/memory/ptr_util.h" |
| 24 #include "base/strings/utf_string_conversions.h" | 23 #include "base/strings/utf_string_conversions.h" |
| (...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 147 views::Widget* const widget_; | 146 views::Widget* const widget_; |
| 148 | 147 |
| 149 DISALLOW_COPY_AND_ASSIGN(CustomWindowTargeter); | 148 DISALLOW_COPY_AND_ASSIGN(CustomWindowTargeter); |
| 150 }; | 149 }; |
| 151 | 150 |
| 152 // Minimal WindowResizer that unlike DefaultWindowResizer does not handle | 151 // Minimal WindowResizer that unlike DefaultWindowResizer does not handle |
| 153 // dragging and resizing windows. | 152 // dragging and resizing windows. |
| 154 class CustomWindowResizer : public ash::WindowResizer { | 153 class CustomWindowResizer : public ash::WindowResizer { |
| 155 public: | 154 public: |
| 156 explicit CustomWindowResizer(ash::wm::WindowState* window_state) | 155 explicit CustomWindowResizer(ash::wm::WindowState* window_state) |
| 157 : WindowResizer(window_state) { | 156 : WindowResizer(window_state) {} |
| 158 ash::ShellPort::Get()->LockCursor(); | |
| 159 } | |
| 160 ~CustomWindowResizer() override { ash::ShellPort::Get()->UnlockCursor(); } | |
| 161 | 157 |
| 162 // Overridden from ash::WindowResizer: | 158 // Overridden from ash::WindowResizer: |
| 163 void Drag(const gfx::Point& location, int event_flags) override {} | 159 void Drag(const gfx::Point& location, int event_flags) override {} |
| 164 void CompleteDrag() override {} | 160 void CompleteDrag() override {} |
| 165 void RevertDrag() override {} | 161 void RevertDrag() override {} |
| 166 | 162 |
| 167 private: | 163 private: |
| 168 DISALLOW_COPY_AND_ASSIGN(CustomWindowResizer); | 164 DISALLOW_COPY_AND_ASSIGN(CustomWindowResizer); |
| 169 }; | 165 }; |
| 170 | 166 |
| (...skipping 1560 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1731 gfx::Point ShellSurface::GetMouseLocation() const { | 1727 gfx::Point ShellSurface::GetMouseLocation() const { |
| 1732 aura::Window* const root_window = widget_->GetNativeWindow()->GetRootWindow(); | 1728 aura::Window* const root_window = widget_->GetNativeWindow()->GetRootWindow(); |
| 1733 gfx::Point location = | 1729 gfx::Point location = |
| 1734 root_window->GetHost()->dispatcher()->GetLastMouseLocationInRoot(); | 1730 root_window->GetHost()->dispatcher()->GetLastMouseLocationInRoot(); |
| 1735 aura::Window::ConvertPointToTarget( | 1731 aura::Window::ConvertPointToTarget( |
| 1736 root_window, widget_->GetNativeWindow()->parent(), &location); | 1732 root_window, widget_->GetNativeWindow()->parent(), &location); |
| 1737 return location; | 1733 return location; |
| 1738 } | 1734 } |
| 1739 | 1735 |
| 1740 } // namespace exo | 1736 } // namespace exo |
| OLD | NEW |