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 #ifndef ASH_DRAG_DROP_DRAG_DROP_CONTROLLER_H_ | 5 #ifndef ASH_DRAG_DROP_DRAG_DROP_CONTROLLER_H_ |
6 #define ASH_DRAG_DROP_DRAG_DROP_CONTROLLER_H_ | 6 #define ASH_DRAG_DROP_DRAG_DROP_CONTROLLER_H_ |
7 | 7 |
8 #include "ash/ash_export.h" | 8 #include "ash/ash_export.h" |
9 #include "base/callback.h" | 9 #include "base/callback.h" |
10 #include "ui/aura/client/drag_drop_client.h" | 10 #include "ui/aura/client/drag_drop_client.h" |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
81 | 81 |
82 // Implementation of ImplicitAnimationObserver | 82 // Implementation of ImplicitAnimationObserver |
83 virtual void OnImplicitAnimationsCompleted() OVERRIDE; | 83 virtual void OnImplicitAnimationsCompleted() OVERRIDE; |
84 | 84 |
85 // Helper method to start drag widget flying back animation. | 85 // Helper method to start drag widget flying back animation. |
86 void StartCanceledAnimation(); | 86 void StartCanceledAnimation(); |
87 | 87 |
88 // Helper method to reset everything. | 88 // Helper method to reset everything. |
89 void Cleanup(); | 89 void Cleanup(); |
90 | 90 |
| 91 // Sets |drag_cursor_| appropriately with the platform cursor and the device |
| 92 // scale factor based on the native type of |cursor|. |
| 93 void SetDragCursor(gfx::NativeCursor cursor); |
| 94 |
91 scoped_ptr<DragImageView> drag_image_; | 95 scoped_ptr<DragImageView> drag_image_; |
92 gfx::Point drag_image_offset_; | 96 gfx::Point drag_image_offset_; |
93 const ui::OSExchangeData* drag_data_; | 97 const ui::OSExchangeData* drag_data_; |
94 int drag_operation_; | 98 int drag_operation_; |
95 gfx::NativeCursor drag_cursor_; | 99 gfx::NativeCursor drag_cursor_; |
96 | 100 |
97 // Window that is currently under the drag cursor. | 101 // Window that is currently under the drag cursor. |
98 aura::Window* drag_window_; | 102 aura::Window* drag_window_; |
99 gfx::Point drag_start_location_; | 103 gfx::Point drag_start_location_; |
100 | 104 |
101 // Indicates whether the caller should be blocked on a drag/drop session. | 105 // Indicates whether the caller should be blocked on a drag/drop session. |
102 // Only be used for tests. | 106 // Only be used for tests. |
103 bool should_block_during_drag_drop_; | 107 bool should_block_during_drag_drop_; |
104 | 108 |
105 // Closure for quitting nested message loop. | 109 // Closure for quitting nested message loop. |
106 base::Closure quit_closure_; | 110 base::Closure quit_closure_; |
107 | 111 |
108 scoped_ptr<ash::internal::DragDropTracker> drag_drop_tracker_; | 112 scoped_ptr<ash::internal::DragDropTracker> drag_drop_tracker_; |
109 | 113 |
110 DISALLOW_COPY_AND_ASSIGN(DragDropController); | 114 DISALLOW_COPY_AND_ASSIGN(DragDropController); |
111 }; | 115 }; |
112 | 116 |
113 } // namespace internal | 117 } // namespace internal |
114 } // namespace ash | 118 } // namespace ash |
115 | 119 |
116 #endif // ASH_DRAG_DROP_DRAG_DROP_CONTROLLER_H_ | 120 #endif // ASH_DRAG_DROP_DRAG_DROP_CONTROLLER_H_ |
OLD | NEW |