@@ -459,6 +459,37 @@ Item {
459 waitUntilLauncherDisappears();
459 waitUntilLauncherDisappears();
462+ function test_dragndrop_cancel() {
463+ dragLauncherIntoView();
464+ var draggedItem = findChild(launcher, "launcherDelegate4")
465+ var item0 = findChild(launcher, "launcherDelegate0")
466+ var fakeDragItem = findChild(launcher, "fakeDragItem")
469+ var currentMouseX = draggedItem.width / 2
470+ var currentMouseY = draggedItem.height / 2
471+ mousePress(draggedItem, currentMouseX, currentMouseY)
472+ // DraggedItem needs to hide and fakeDragItem become visible
473+ tryCompare(draggedItem, "itemOpacity", 0)
474+ tryCompare(fakeDragItem, "visible", true)
477+ currentMouseX -= units.gu(20)
478+ mouseMove(draggedItem, currentMouseX, currentMouseY)
480+ // Make sure we're in the dragging state
481+ var dndArea = findChild(launcher, "dndArea");
482+ tryCompare(draggedItem, "dragging", true)
483+ tryCompare(dndArea, "draggedIndex", 4)
485+ // Tap somewhere in the middle of the screen to close/hide the launcher
488+ // Make sure the dnd operation has been stopped
489+ tryCompare(draggedItem, "dragging", false)
490+ tryCompare(dndArea, "draggedIndex", -1)
462 function test_quicklist_dismiss() {
493 function test_quicklist_dismiss() {
463 dragLauncherIntoView();
494 dragLauncherIntoView();
464 var draggedItem = findChild(launcher, "launcherDelegate5")
495 var draggedItem = findChild(launcher, "launcherDelegate5")