@@ -221,6 +221,7 @@ Item {
221221 var mappedCoords = mapFromItem(null, pos.x, pos.y);
222222 cursor.x = mappedCoords.x;
223223 cursor.y = mappedCoords.y;
224+ cursor.mouseNeverMoved = false;
224225 }
225226 }
226227
@@ -716,6 +717,14 @@ Item {
716717 visible: shell.hasMouse
717718 z: screenGrabber.z + 1
718719
720+ property bool mouseNeverMoved: true
721+ Binding {
722+ target: cursor; property: "x"; value: shell.width / 2; when: mouseNeverMoved && visible
723+ }
724+ Binding {
725+ target: cursor; property: "y"; value: shell.height / 2; when: mouseNeverMoved && visible
726+ }
727+
719728 onPushedLeftBoundary: {
720729 if (buttons === Qt.NoButton) {
721730 launcher.pushEdge(amount);
@@ -729,7 +738,10 @@ Item {
729738 }
730739 }
731740
732− onMouseMoved: { cursor.opacity = 1; }
741+ onMouseMoved: {
742+ mouseNeverMoved = false;
743+ cursor.opacity = 1;
744+ }
733745 }
734746
735747 // non-visual object