on xenial help sign in
Hide the greeter OSK if indicators are open and don't show the edge tutorial during an emergency call.
commitdd6ea60a43caae51916dd296f5689db3a7aace42 authorMichael Terry <michael.terry@canonical.com> dateTue 30 Aug 2016, 09:49 (10 years ago) parent9915ccd
4 files changed+20−3
qml/Greeter/CoverPage.qml+1−1 qml/Shell.qml+2−1 tests/qmltests/tst_Shell.qml+1−1 tests/qmltests/tst_ShellWithPin.qml+16
qml/Greeter/CoverPage.qml+1−1
@@ -31,7 +31,7 @@ Showable {
3131
3232 property alias infographics: infographics
3333
34− readonly property real showProgress: MathUtils.clamp((width - Math.abs(x)) / width, 0, 1)
34+ readonly property real showProgress: MathUtils.clamp((width - Math.abs(x + launcherOffset)) / width, 0, 1)
3535
3636 signal tease()
3737 signal clicked()
qml/Shell.qml+2−1
@@ -434,6 +434,7 @@ StyledItem {
434434 id: integratedGreeter
435435 Greeter {
436436
437+ enabled: panel.indicators.fullyClosed // hides OSK when panel is open
437438 hides: [launcher, panel.indicators]
438439 tabletMode: shell.usageScenario != "phone"
439440 launcherOffset: launcher.progress
@@ -678,7 +679,7 @@ StyledItem {
678679 objectName: "tutorial"
679680 anchors.fill: parent
680681
681− paused: callManager.hasCalls || !greeter || greeter.shown ||
682+ paused: callManager.hasCalls || !greeter || greeter.active ||
682683 wizard.active
683684 delayed: dialogs.hasActiveDialog || notifications.hasNotification ||
684685 inputMethod.visible ||
tests/qmltests/tst_Shell.qml+1−1
@@ -687,7 +687,7 @@ Rectangle {
687687 waitUntilDashIsFocused();
688688 tryCompare(greeter, "shown", false);
689689 } else {
690− compare(greeter.fullyShown, data.greeterShown);
690+ tryCompare(greeter, "fullyShown", data.greeterShown);
691691 }
692692
693693 var launcher = findChild(shell, "launcherPanel");
tests/qmltests/tst_ShellWithPin.qml+16
@@ -328,6 +328,22 @@ Item {
328328 tryCompare(greeter, "shown", true);
329329 }
330330
331+ function test_emergencyCallPausesTutorial() {
332+ var greeter = findChild(shell, "greeter");
333+ var tutorial = findChild(shell, "tutorial");
334+
335+ AccountsService.demoEdges = true;
336+ enterPin("1234");
337+ tryCompare(tutorial, "paused", false);
338+
339+ LightDM.Greeter.showGreeter();
340+ verify(tutorial.paused);
341+
342+ swipeAwayGreeter(true);
343+ tap(findChild(greeter, "emergencyCallLabel"));
344+ verify(tutorial.paused);
345+ }
346+
331347 function test_failedLoginsCount() {
332348 AccountsService.failedLogins = 0
333349