From d3c403e2ee342f29b7eda11cce0c113b01dd981a Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sun, 9 Mar 2014 17:14:13 +0300 Subject: fix long mouse press. --- src/gui/viewport.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/gui/viewport.cpp b/src/gui/viewport.cpp index 44e3aaa7d..7cf0cb1b1 100644 --- a/src/gui/viewport.cpp +++ b/src/gui/viewport.cpp @@ -519,7 +519,10 @@ void Viewport::mousePressed(MouseEvent &event) if (!mLongMouseClick && eventButton == MouseEvent::LEFT) { if (leftMouseAction()) + { + mPlayerFollowMouse = false; return; + } } else if (eventButton == MouseEvent::MIDDLE) { @@ -659,9 +662,6 @@ void Viewport::walkByMouse(MouseEvent &event) void Viewport::mouseDragged(MouseEvent &event) { - if (mLongMouseClick) - return; - walkByMouse(event); } @@ -678,17 +678,18 @@ void Viewport::mouseReleased(MouseEvent &event) // long button press if (gui && gui->isLongPress()) { - openContextMenu(event); - gui->resetClickCount(); + if (openContextMenu(event)) + { + gui->resetClickCount(); + return; + } } else { if (leftMouseAction()) return; - if (event.getSource() != this) - return; - walkByMouse(event); } + walkByMouse(event); } } } -- cgit v1.2.3-60-g2f50