summaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/window.cpp13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/gui/window.cpp b/src/gui/window.cpp
index 6165ce70..9f9ce9fc 100644
--- a/src/gui/window.cpp
+++ b/src/gui/window.cpp
@@ -339,10 +339,11 @@ void Window::mousePressed(gcn::MouseEvent &event)
mMouseResize |= (y > getHeight() - resizeBorderWidth) ? BOTTOM :
(y < resizeBorderWidth) ? TOP : 0;
}
- else if (event.getSource() == mGrip)
+ else if (event.getSource() == mGrip &&
+ event.getButton() == gcn::MouseEvent::LEFT)
{
- mDragOffsetX = x + mGrip->getX();
- mDragOffsetY = y + mGrip->getY();
+ mDragOffsetX = x;
+ mDragOffsetY = y;
mMouseResize |= BOTTOM | RIGHT;
mIsMoving = false;
}
@@ -365,10 +366,8 @@ void Window::mouseDragged(gcn::MouseEvent &event)
if (mMouseResize && !mIsMoving)
{
- const int dx = event.getX() - mDragOffsetX +
- ((event.getSource() == mGrip) ? mGrip->getX() : 0);
- const int dy = event.getY() - mDragOffsetY +
- ((event.getSource() == mGrip) ? mGrip->getY() : 0);
+ const int dx = event.getX() - mDragOffsetX;
+ const int dy = event.getY() - mDragOffsetY;
gcn::Rectangle newDim = getDimension();
if (mMouseResize & (TOP | BOTTOM))