Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(254)

Side by Side Diff: ash/drag_drop/drag_drop_tracker.cc

Issue 425363002: Moving coordinate conversion methods from ash/wm to ui/wm. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: More fixes Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ash/drag_drop/drag_drop_controller.cc ('k') | ash/shelf/shelf_bezel_event_filter.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/drag_drop/drag_drop_tracker.h" 5 #include "ash/drag_drop/drag_drop_tracker.h"
6 6
7 #include "ash/shell.h" 7 #include "ash/shell.h"
8 #include "ash/shell_window_ids.h" 8 #include "ash/shell_window_ids.h"
9 #include "ash/wm/coordinate_conversion.h" 9 #include "ash/wm/coordinate_conversion.h"
10 #include "ui/aura/client/window_tree_client.h" 10 #include "ui/aura/client/window_tree_client.h"
11 #include "ui/aura/window.h" 11 #include "ui/aura/window.h"
12 #include "ui/aura/window_event_dispatcher.h" 12 #include "ui/aura/window_event_dispatcher.h"
13 #include "ui/events/event.h" 13 #include "ui/events/event.h"
14 #include "ui/gfx/screen.h" 14 #include "ui/gfx/screen.h"
15 #include "ui/wm/core/coordinate_conversion.h"
15 #include "ui/wm/public/activation_delegate.h" 16 #include "ui/wm/public/activation_delegate.h"
16 17
17 namespace ash { 18 namespace ash {
18 namespace { 19 namespace {
19 20
20 // An activation delegate which disables activating the drag and drop window. 21 // An activation delegate which disables activating the drag and drop window.
21 class CaptureWindowActivationDelegate 22 class CaptureWindowActivationDelegate
22 : public aura::client::ActivationDelegate { 23 : public aura::client::ActivationDelegate {
23 public: 24 public:
24 CaptureWindowActivationDelegate() {} 25 CaptureWindowActivationDelegate() {}
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
61 capture_window_->ReleaseCapture(); 62 capture_window_->ReleaseCapture();
62 } 63 }
63 64
64 void DragDropTracker::TakeCapture() { 65 void DragDropTracker::TakeCapture() {
65 capture_window_->SetCapture(); 66 capture_window_->SetCapture();
66 } 67 }
67 68
68 aura::Window* DragDropTracker::GetTarget(const ui::LocatedEvent& event) { 69 aura::Window* DragDropTracker::GetTarget(const ui::LocatedEvent& event) {
69 DCHECK(capture_window_.get()); 70 DCHECK(capture_window_.get());
70 gfx::Point location_in_screen = event.location(); 71 gfx::Point location_in_screen = event.location();
71 wm::ConvertPointToScreen(capture_window_.get(), 72 ::wm::ConvertPointToScreen(capture_window_.get(), &location_in_screen);
72 &location_in_screen);
73 aura::Window* root_window_at_point = 73 aura::Window* root_window_at_point =
74 wm::GetRootWindowAt(location_in_screen); 74 wm::GetRootWindowAt(location_in_screen);
75 gfx::Point location_in_root = location_in_screen; 75 gfx::Point location_in_root = location_in_screen;
76 wm::ConvertPointFromScreen(root_window_at_point, &location_in_root); 76 ::wm::ConvertPointFromScreen(root_window_at_point, &location_in_root);
77 return root_window_at_point->GetEventHandlerForPoint(location_in_root); 77 return root_window_at_point->GetEventHandlerForPoint(location_in_root);
78 } 78 }
79 79
80 ui::LocatedEvent* DragDropTracker::ConvertEvent( 80 ui::LocatedEvent* DragDropTracker::ConvertEvent(
81 aura::Window* target, 81 aura::Window* target,
82 const ui::LocatedEvent& event) { 82 const ui::LocatedEvent& event) {
83 DCHECK(capture_window_.get()); 83 DCHECK(capture_window_.get());
84 gfx::Point target_location = event.location(); 84 gfx::Point target_location = event.location();
85 aura::Window::ConvertPointToTarget(capture_window_.get(), target, 85 aura::Window::ConvertPointToTarget(capture_window_.get(), target,
86 &target_location); 86 &target_location);
87 gfx::Point location_in_screen = event.location(); 87 gfx::Point location_in_screen = event.location();
88 ash::wm::ConvertPointToScreen(capture_window_.get(), &location_in_screen); 88 ::wm::ConvertPointToScreen(capture_window_.get(), &location_in_screen);
89 gfx::Point target_root_location = event.root_location(); 89 gfx::Point target_root_location = event.root_location();
90 aura::Window::ConvertPointToTarget( 90 aura::Window::ConvertPointToTarget(
91 capture_window_->GetRootWindow(), 91 capture_window_->GetRootWindow(),
92 ash::wm::GetRootWindowAt(location_in_screen), 92 ash::wm::GetRootWindowAt(location_in_screen),
93 &target_root_location); 93 &target_root_location);
94 return new ui::MouseEvent(event.type(), 94 return new ui::MouseEvent(event.type(),
95 target_location, 95 target_location,
96 target_root_location, 96 target_root_location,
97 event.flags(), 97 event.flags(),
98 static_cast<const ui::MouseEvent&>(event). 98 static_cast<const ui::MouseEvent&>(event).
99 changed_button_flags()); 99 changed_button_flags());
100 } 100 }
101 101
102 } // namespace ash 102 } // namespace ash
OLDNEW
« no previous file with comments | « ash/drag_drop/drag_drop_controller.cc ('k') | ash/shelf/shelf_bezel_event_filter.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698