@@ -740,13 +740,40 @@ Rectangle {
740740 loadShell(data.formFactor);
741741 swipeAwayGreeter();
742742
743− var dialerApp = ApplicationManager.startApplication("webbrowser-app");
744− verify(dialerApp);
743+ var webApp = ApplicationManager.startApplication("webbrowser-app");
744+ verify(webApp);
745745 waitUntilAppSurfaceShowsUp("webbrowser-app")
746746
747− verify(dialerApp.session.surface);
747+ verify(webApp.session.surface);
748748
749− tryCompare(dialerApp.session.surface, "activeFocus", true);
749+ tryCompare(webApp.session.surface, "activeFocus", true);
750+ }
751+
752+ function test_launchedAppHasActiveFocusWhenFormFactorSwitched_data() {
753+ return [
754+ {tag: "phone->tablet", from: "phone", to: "tablet"},
755+ {tag: "phone->desktop", from: "phone", to: "desktop"},
756+ {tag: "tablet->phone", from: "tablet", to: "phone"},
757+ {tag: "tablet->desktop", from: "tablet", to: "desktop"},
758+ {tag: "desktop->phone", from: "desktop", to: "phone"},
759+ {tag: "desktop->tablet", from: "desktop", to: "tablet"},
760+ ];
761+ }
762+
763+ function test_launchedAppHasActiveFocusWhenFormFactorSwitched(data) {
764+ loadShell(data.from);
765+ swipeAwayGreeter();
766+
767+ var webApp = ApplicationManager.startApplication("webbrowser-app");
768+ verify(webApp);
769+ waitUntilAppSurfaceShowsUp("webbrowser-app")
770+
771+ verify(webApp.session.surface);
772+
773+ tryCompare(webApp.session.surface, "activeFocus", true);
774+
775+ loadShell(data.to);
776+ tryCompare(webApp.session.surface, "activeFocus", true);
750777 }
751778
752779 function waitUntilAppSurfaceShowsUp(appId) {