on xenial help sign in
Don't let the mouse go outside the parentItem
0497ef3Albert Astals Cid
plugins/Cursor/MousePointer.cpp+4−4
@@ -47,17 +47,17 @@ void MousePointer::handleMouseEvent(ulong timestamp, QPointF movement, Qt::Mouse
47 if (newX < 0) {
47 if (newX < 0) {
48 Q_EMIT pushedLeftBoundary(qAbs(newX), buttons);
48 Q_EMIT pushedLeftBoundary(qAbs(newX), buttons);
49 newX = 0;
49 newX = 0;
50− } else if (newX > parentItem()->width()) {
50+ } else if (newX >= parentItem()->width()) {
51 Q_EMIT pushedRightBoundary(newX - parentItem()->width(), buttons);
51 Q_EMIT pushedRightBoundary(newX - parentItem()->width(), buttons);
52− newX = parentItem()->width();
52+ newX = parentItem()->width() - 1;
53 }
53 }
54 setX(newX);
54 setX(newX);
55
55
56 qreal newY = y() + movement.y();
56 qreal newY = y() + movement.y();
57 if (newY < 0) {
57 if (newY < 0) {
58 newY = 0;
58 newY = 0;
59− } else if (newY > parentItem()->height()) {
59+ } else if (newY >= parentItem()->height()) {
60− newY = parentItem()->height();
60+ newY = parentItem()->height() - 1;
61 }
61 }
62 setY(newY);
62 setY(newY);
63
63