on xenial help sign in
add a qml test
commit2adb51cd73433cbd05abf002020f6facfe82a5fc authorhandsome_feng <445865575@qq.com> dateThu 25 Jun 2015, 17:25 (11 years ago) parent497c292
2 files changed+28
qml/Launcher/Launcher.qml+1 tests/qmltests/Launcher/tst_Launcher.qml+27
qml/Launcher/Launcher.qml+1
@@ -180,6 +180,7 @@ Item {
180180
181181 //We need to eat touch events here because of bug lp:1445472
182182 MultiPointTouchArea {
183+ objectName: "eatTouchArea"
183184 anchors.fill: parent
184185 enabled: root.shadeBackground && root.state == "visible"
185186 }
tests/qmltests/Launcher/tst_Launcher.qml+27
@@ -201,6 +201,33 @@ Item {
201201 tryCompare(panel, "x", -launcher.panelWidth, 1000)
202202 }
203203
204+ function test_cantClickOnDashWhileDraggingALauncherIcon() {
205+ dragLauncherIntoView();
206+ var eatTouchArea = findChild(launcher, "eatTouchArea")
207+ var draggedItem = findChild(launcher, "launcherDelegate4")
208+ var item0 = findChild(launcher, "launcherDelegate0")
209+ var fakeDragItem = findChild(launcher, "fakeDragItem")
210+
211+ // Doing longpress
212+ var currentMouseX = draggedItem.width / 2
213+ var currentMouseY = draggedItem.height / 2
214+ mousePress(draggedItem, currentMouseX, currentMouseY)
215+ // DraggedItem needs to hide and fakeDragItem become visible
216+ tryCompare(draggedItem, "itemOpacity", 0)
217+ tryCompare(fakeDragItem, "visible", true)
218+
219+ // Dragging
220+ currentMouseX -= units.gu(20)
221+ mouseMove(draggedItem, currentMouseX, currentMouseY)
222+
223+ // Make sure we're in the dragging state
224+ var dndArea = findChild(launcher, "dndArea");
225+ tryCompare(draggedItem, "dragging", true)
226+ tryCompare(dndArea, "draggedIndex", 4)
227+
228+ compare(eatTouchArea.enabled, true)
229+ }
230+
204231 /* If I click on the icon of an application on the launcher
205232 Launcher::launcherApplicationSelected signal should be emitted with the
206233 corresponding desktop file. E.g. clicking on phone icon should yield