| Index: ui/aura/mus/drag_drop_controller_mus.cc
|
| diff --git a/ui/aura/mus/drag_drop_controller_mus.cc b/ui/aura/mus/drag_drop_controller_mus.cc
|
| index ccb364dd4101763b0c30907fe863955c8123fbe4..c053bf95e7e48fba509205aa3bf7607547bcbc7d 100644
|
| --- a/ui/aura/mus/drag_drop_controller_mus.cc
|
| +++ b/ui/aura/mus/drag_drop_controller_mus.cc
|
| @@ -133,9 +133,6 @@ int DragDropControllerMus::StartDragAndDrop(
|
| ui::DragDropTypes::DragEventSource source) {
|
| DCHECK(!current_drag_state_);
|
|
|
| - // TODO(erg): Pass |cursor_location| and |bitmap| in PerformDragDrop() when
|
| - // we start showing an image representation of the drag under he cursor.
|
| -
|
| base::RunLoop run_loop;
|
| WindowMus* root_window_mus = WindowMus::Get(root_window);
|
| const uint32_t change_id =
|
| @@ -149,12 +146,18 @@ int DragDropControllerMus::StartDragAndDrop(
|
| base::MessageLoop* loop = base::MessageLoop::current();
|
| base::MessageLoop::ScopedNestableTaskAllower allow_nested(loop);
|
|
|
| + ui::mojom::DragEventSource mojo_source = ui::mojom::DragEventSource::MOUSE;
|
| + if (source == ui::DragDropTypes::DRAG_EVENT_SOURCE_TOUCH)
|
| + mojo_source = ui::mojom::DragEventSource::TOUCH;
|
| +
|
| std::map<std::string, std::vector<uint8_t>> drag_data =
|
| static_cast<const aura::OSExchangeDataProviderMus&>(data.provider())
|
| .GetData();
|
| - window_tree_->PerformDragDrop(change_id, root_window_mus->server_id(),
|
| - mojo::MapToUnorderedMap(drag_data),
|
| - drag_operations);
|
| + window_tree_->PerformDragDrop(
|
| + change_id, root_window_mus->server_id(), screen_location,
|
| + mojo::MapToUnorderedMap(drag_data),
|
| + *data.provider().GetDragImage().bitmap(),
|
| + data.provider().GetDragImageOffset(), drag_operations, mojo_source);
|
|
|
| run_loop.Run();
|
|
|
|
|