@@ -19,6 +19,7 @@ import AccountsService 0.1
19import LightDM 0.1 as LightDM
19import LightDM 0.1 as LightDM
20import Ubuntu.Components 1.1
20import Ubuntu.Components 1.1
21import Ubuntu.SystemImage 0.1
21import Ubuntu.SystemImage 0.1
22+import Unity.Connectivity 0.1
22import Unity.Launcher 0.1
23import Unity.Launcher 0.1
23import "../Components"
24import "../Components"
@@ -56,6 +57,11 @@ Showable {
56 signal sessionStarted()
57 signal sessionStarted()
57 signal emergencyCall()
58 signal emergencyCall()
60+ function forceShow() {
59 function notifyAppFocused(appId) {
65 function notifyAppFocused(appId) {
60 if (!active) {
66 if (!active) {
@@ -120,9 +126,11 @@ Showable {
120 StandardAnimation {}
126 StandardAnimation {}
123− function selectUser(uid) {
129+ function selectUser(uid, reset) {
124 d.waiting = true;
130 d.waiting = true;
125− loader.item.reset();
132+ loader.item.reset();
126 currentIndex = uid;
134 currentIndex = uid;
127 var user = LightDM.Users.data(uid, LightDM.UserRoles.NameRole);
135 var user = LightDM.Users.data(uid, LightDM.UserRoles.NameRole);
128 AccountsService.user = user;
136 AccountsService.user = user;
@@ -162,6 +170,10 @@ Showable {
173+ Component.onCompleted: {
174+ Connectivity.unlockAllModems();
166 id: forcedDelayTimer
178 id: forcedDelayTimer
167 interval: 1000 * 60
179 interval: 1000 * 60
@@ -192,14 +204,14 @@ Showable {
192 onLoaded: {
204 onLoaded: {
193 root.lockedApp = "";
205 root.lockedApp = "";
194 root.forceActiveFocus();
206 root.forceActiveFocus();
195− d.selectUser(d.currentIndex);
207+ d.selectUser(d.currentIndex, true);
196 LightDM.Infographic.readyForDataChange();
208 LightDM.Infographic.readyForDataChange();
199 Connections {
211 Connections {
200 target: loader.item
212 target: loader.item
201 onSelected: {
213 onSelected: {
202− d.selectUser(index);
214+ d.selectUser(index, true);
204 onResponded: {
216 onResponded: {
205 if (root.locked) {
217 if (root.locked) {
@@ -284,10 +296,7 @@ Showable {
284 Connections {
296 Connections {
285 target: LightDM.Greeter
297 target: LightDM.Greeter
287− onShowGreeter: {
299+ onShowGreeter: root.forceShow()
289− loader.item.reset();
292 onHideGreeter: {
301 onHideGreeter: {
293 d.login();
302 d.login();
@@ -352,7 +361,7 @@ Showable {
353 loader.item.authenticated(false);
362 loader.item.authenticated(false);
354 if (!LightDM.Greeter.promptless) {
363 if (!LightDM.Greeter.promptless) {
355− d.selectUser(d.currentIndex);
364+ d.selectUser(d.currentIndex, false);
@@ -361,7 +370,7 @@ Showable {
361 // Find index for requested user, if it exists
370 // Find index for requested user, if it exists
362 for (var i = 0; i < LightDM.Users.count; i++) {
371 for (var i = 0; i < LightDM.Users.count; i++) {
363 if (user === LightDM.Users.data(i, LightDM.UserRoles.NameRole)) {
372 if (user === LightDM.Users.data(i, LightDM.UserRoles.NameRole)) {
364− d.selectUser(i);
373+ d.selectUser(i, true);