@@ -98,18 +98,22 @@ BasicShell {
9898 }
9999 }
100100
101+ Rectangle {
102+ anchors.fill: parent
103+ color: "black"
104+ opacity: greeterWrapper.showProgress * 0.8
105+ }
106+
101107 Item {
102108 // Just a tiny wrapper to adjust greeter's x without messing with its own dragging
109+ id: greeterWrapper
103110 width: parent.width
104111 height: parent.height
105112 x: launcher.progress
106113 Behavior on x {SmoothedAnimation{velocity: 600}}
107114
108− Rectangle {
109− anchors.fill: parent
110− color: "black"
111− opacity: (1 - Math.abs(greeter.x) / shell.width) * 0.8
112− }
115+ readonly property real showProgress: x === 0 ? greeter.showProgress : (1 - x/width)
116+ onShowProgressChanged: if (LightDM.Greeter.promptless && showProgress === 0) greeter.login()
113117
114118 Greeter {
115119 id: greeter
@@ -143,8 +147,6 @@ BasicShell {
143147 }
144148 }
145149
146− onShowProgressChanged: if (LightDM.Greeter.promptless && showProgress == 0) login()
147−
148150 onUnlocked: login()
149151 onSelected: {
150152 // Update launcher items for new user