Index: mash/wm/frame/move_event_handler.cc |
diff --git a/mash/wm/frame/move_event_handler.cc b/mash/wm/frame/move_event_handler.cc |
index 448e51ad784580de774b1811e24252513e7dc72f..256e0aa88d32b6a18a79fa2acdbf0621d787dcec 100644 |
--- a/mash/wm/frame/move_event_handler.cc |
+++ b/mash/wm/frame/move_event_handler.cc |
@@ -56,20 +56,27 @@ MoveEventHandler::~MoveEventHandler() { |
void MoveEventHandler::ProcessLocatedEvent(ui::LocatedEvent* event) { |
const bool had_move_loop = move_loop_.get() != nullptr; |
- ui::Event* ui_event = static_cast<ui::Event*>(event); |
+ DCHECK(event->IsMouseEvent() || event->IsTouchEvent()); |
+ |
+ // TODO(moshayedi): no need for this once MoveEventHandler directly receives |
+ // pointer events. |
+ scoped_ptr<ui::PointerEvent> pointer_event; |
+ if (event->IsMouseEvent()) |
+ pointer_event.reset(new ui::PointerEvent(*event->AsMouseEvent())); |
+ else |
+ pointer_event.reset(new ui::PointerEvent(*event->AsTouchEvent())); |
+ |
if (move_loop_) { |
- if (move_loop_->Move(*mus::mojom::Event::From(*ui_event)) == MoveLoop::DONE) |
+ if (move_loop_->Move(*pointer_event.get()) == MoveLoop::DONE) |
move_loop_.reset(); |
- } else if (event->type() == ui::ET_MOUSE_PRESSED || |
- event->type() == ui::ET_TOUCH_PRESSED) { |
- const int ht_location = GetNonClientComponentForEvent(event); |
+ } else if (pointer_event->type() == ui::ET_POINTER_DOWN) { |
+ const int ht_location = GetNonClientComponentForEvent(pointer_event.get()); |
if (ht_location != HTNOWHERE) { |
- // TODO(sky): convert MoveLoop to take ui::Event. |
- move_loop_ = MoveLoop::Create(mus_window_, ht_location, |
- *mus::mojom::Event::From(*ui_event)); |
+ move_loop_ = |
+ MoveLoop::Create(mus_window_, ht_location, *pointer_event.get()); |
} |
- } else if (event->type() == ui::ET_MOUSE_MOVED) { |
- const int ht_location = GetNonClientComponentForEvent(event); |
+ } else if (pointer_event->type() == ui::ET_POINTER_MOVED) { |
+ const int ht_location = GetNonClientComponentForEvent(pointer_event.get()); |
mus_window_->SetPredefinedCursor(CursorForWindowComponent(ht_location)); |
} |
if (had_move_loop || move_loop_) |