@@ -52,15 +52,20 @@ Rectangle {
52 application: fakeApplication
52 application: fakeApplication
55− Loader {
55+ FocusScope {
56− id: applicationWindowLoader
56+ id: appFocus
58 top: parent.top
58 top: parent.top
59 bottom: parent.bottom
59 bottom: parent.bottom
60 left: parent.left
60 left: parent.left
62 width: units.gu(40)
62 width: units.gu(40)
65+ id: applicationWindowLoader
63− sourceComponent: applicationWindowComponent
67+ sourceComponent: applicationWindowComponent
66 Rectangle {
71 Rectangle {
@@ -68,7 +73,7 @@ Rectangle {
69 top: parent.top
74 top: parent.top
70 bottom: parent.bottom
75 bottom: parent.bottom
71− left: applicationWindowLoader.right
76+ left: appFocus.right
72 right: parent.right
77 right: parent.right
@@ -378,5 +383,16 @@ Rectangle {
379 verify(stateGroup.state === "void");
384 verify(stateGroup.state === "void");
387+ // should be forcing active focus when interactive changes,
388+ // which will cause a FocusScope higher in the object hierarchy tp be given the focus
389+ function test_forceActiveFocusFollowsInterative() {
390+ fakeApplication.createSession();
391+ applicationWindowLoader.item.interactive = false;
392+ applicationWindowLoader.item.interactive = true;
393+ fakeSession.createSurface();
395+ compare(appFocus.focus, true);