@@ -1603,5 +1603,40 @@ Rectangle {
16031603
16041604 tryCompare(dialogLoader, "item", null);
16051605 }
1606+
1607+ function test_focusOnShutdownDialogClose() {
1608+ loadShell("manta");
1609+ usageModeSelector.selectWindowed();
1610+
1611+ var surfaceId = topLevelSurfaceList.nextId;
1612+ var app = ApplicationManager.startApplication("twitter-webapp");
1613+ waitUntilAppWindowIsFullyLoaded(surfaceId);
1614+
1615+ var primaryAppWindow = findAppWindowForSurfaceId(surfaceId);
1616+ var surface = app.surfaceList.get(0);
1617+ var surfaceItem = findSurfaceItem(primaryAppWindow, surface);
1618+
1619+ compare(window.activeFocusItem, surfaceItem);
1620+
1621+ testCase.showPowerDialog();
1622+
1623+ var dialogLoader = findChild(orientedShell, "dialogLoader");
1624+ tryCompareFunction(function() { return dialogLoader.item !== null }, true);
1625+
1626+ keyClick(Qt.Key_Escape);
1627+
1628+ tryCompare(dialogLoader, "item", null);
1629+ compare(window.activeFocusItem, surfaceItem);
1630+
1631+ // Do it twice, our previous solution failed the second time ^_^
1632+ testCase.showPowerDialog();
1633+
1634+ tryCompareFunction(function() { return dialogLoader.item !== null }, true);
1635+
1636+ keyClick(Qt.Key_Escape);
1637+
1638+ tryCompare(dialogLoader, "item", null);
1639+ compare(window.activeFocusItem, surfaceItem);
1640+ }
16061641 }
16071642}