@@ -155,7 +155,8 @@ Rectangle {
155155 var sessions = [];
156156 for (i = 0; i < data.count; i++) {
157157 var session = ApplicationTest.addChildSession(sessionContainer.session,
158− "gallery");
158+ "gallery",
159+ true);
159160 session.createSurface();
160161 sessionContainer.session.addChildSession(session);
161162 compare(sessionContainer.childSessions.count(), i+1);
@@ -180,7 +181,7 @@ Rectangle {
180181 // 3 sessions should cover all edge cases
181182 for(i = 0; i < 3; i++) {
182183 var a_session = ApplicationTest.addChildSession(
183− sessionContainer.session, "gallery"
184+ sessionContainer.session, "gallery", true
184185 )
185186
186187 a_session.createSurface();
@@ -226,7 +227,8 @@ Rectangle {
226227 var container = sessionContainer;
227228 for (i = 0; i < data.depth; i++) {
228229 var session = ApplicationTest.addChildSession(lastSession,
229− "gallery");
230+ "gallery",
231+ true);
230232 session.createSurface();
231233 lastSession.addChildSession(session);
232234 compare(container.childSessions.count(), 1);
@@ -250,7 +252,8 @@ Rectangle {
250252 var sessionContainer = sessionContainerLoader.item;
251253
252254 var session = ApplicationTest.addChildSession(sessionContainer.session,
253− "gallery");
255+ "gallery",
256+ true);
254257 session.createSurface();
255258 sessionContainer.session.addChildSession(session);
256259
@@ -288,7 +291,8 @@ Rectangle {
288291 var sessionContainer = sessionContainerLoader.item;
289292
290293 var session = ApplicationTest.addChildSession(sessionContainer.session,
291− "gallery");
294+ "gallery",
295+ true);
292296
293297 var delegate = findChild(sessionContainer, "childDelegate0");
294298 var childContainer = findChild(delegate, "sessionContainer");
@@ -304,6 +308,24 @@ Rectangle {
304308 tryCompareFunction(function() { return isContainerAnimating(childContainer); }, true);
305309 // wait for animation to end
306310 tryCompareFunction(function() { return isContainerAnimating(childContainer); }, false);
311+
312+ tryCompareFunction(function() { return sessionContainer.childSessions.count() }, 0);
313+ }
314+
315+ function test_childSessionsRemovedOnStopWhenNotLive() {
316+ sessionCheckbox.checked = true;
317+ var sessionContainer = sessionContainerLoader.item;
318+
319+ var session = ApplicationTest.addChildSession(sessionContainer.session,
320+ "gallery",
321+ false);
322+
323+ var delegate = findChild(sessionContainer, "childDelegate0");
324+ var childContainer = findChild(delegate, "sessionContainer");
325+
326+ ApplicationTest.removeSession(session);
327+
328+ tryCompareFunction(function() { return sessionContainer.childSessions.count() }, 0);
307329 }
308330 }
309331}