169 { |
168 { |
170 m_normalPriority = CEikonEnv::Static()->RootWin().OrdinalPriority(); |
169 m_normalPriority = CEikonEnv::Static()->RootWin().OrdinalPriority(); |
171 |
170 |
172 m_handler = new PhoneVisibilityHandler (*this, this); |
171 m_handler = new PhoneVisibilityHandler (*this, this); |
173 |
172 |
174 m_startPosition = CEikonEnv::Static()->RootWin().OrdinalPosition(); |
173 // Expect OrdinalPosition higher than 0 |
175 QVERIFY(m_startPosition > 0); // Expect OrdinalPosition higher than 0 |
174 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
176 m_startPriority = CEikonEnv::Static()->RootWin().OrdinalPriority(); |
175 m_startPriority = CEikonEnv::Static()->RootWin().OrdinalPriority(); |
177 QCOMPARE(m_startPriority, (int)ECoeWinPriorityNeverAtFront); |
176 QCOMPARE(m_startPriority, (int)ECoeWinPriorityNeverAtFront); |
178 } |
177 } |
179 |
178 |
180 void TestPhoneVisibilityHandler::cleanupTestCase () |
179 void TestPhoneVisibilityHandler::cleanupTestCase () |
201 |
200 |
202 void TestPhoneVisibilityHandler::t_normal() |
201 void TestPhoneVisibilityHandler::t_normal() |
203 { |
202 { |
204 // Test hide device dialogs when background ( false ) |
203 // Test hide device dialogs when background ( false ) |
205 m_handler->hideDeviceDialogs(false); |
204 m_handler->hideDeviceDialogs(false); |
206 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
205 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
207 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
206 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
208 |
207 |
209 // Test hide device dialogs when background ( true ) |
208 // Test hide device dialogs when background ( true ) |
210 m_handler->hideDeviceDialogs(true); |
209 m_handler->hideDeviceDialogs(true); |
211 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
210 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
212 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
211 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
213 |
212 |
214 // bringToForeground is call |
213 // bringToForeground is call |
215 m_handler->bringToForeground(); |
214 m_handler->bringToForeground(); |
216 QVERIFY(m_bringToForegroundCalled); |
215 QVERIFY(m_bringToForegroundCalled); |
227 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), 0); |
226 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), 0); |
228 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
227 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
229 |
228 |
230 // send backgroud is called last |
229 // send backgroud is called last |
231 m_handler->sendToBackground(false); |
230 m_handler->sendToBackground(false); |
232 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
231 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
233 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
232 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
234 } |
233 } |
235 |
234 |
236 void TestPhoneVisibilityHandler::t_carmode() |
235 void TestPhoneVisibilityHandler::t_carmode() |
237 { |
236 { |
267 QVERIFY(m_handler->m_carModeEnabled == false); |
266 QVERIFY(m_handler->m_carModeEnabled == false); |
268 QVERIFY(m_bringToForegroundCalled == false); |
267 QVERIFY(m_bringToForegroundCalled == false); |
269 |
268 |
270 // send backgroud is called last |
269 // send backgroud is called last |
271 m_handler->sendToBackground(false); |
270 m_handler->sendToBackground(false); |
272 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
271 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
273 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
272 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
274 } |
273 } |
275 |
274 |
276 void TestPhoneVisibilityHandler::t_devicelock() |
275 void TestPhoneVisibilityHandler::t_devicelock() |
277 { |
276 { |
278 m_handler->HandlePropertyChangedL(KPSUidCoreApplicationUIs, KCoreAppUIsAutolockStatus, ETimerLocked); |
277 m_handler->HandlePropertyChangedL(KPSUidCoreApplicationUIs, KCoreAppUIsAutolockStatus, ETimerLocked); |
279 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
278 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
280 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
279 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
281 |
280 |
282 // Test hide device dialogs when background ( false ) |
281 // Test hide device dialogs when background ( false ) |
283 m_handler->hideDeviceDialogs(false); |
282 m_handler->hideDeviceDialogs(false); |
284 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
283 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
285 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
284 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
286 |
285 |
287 // Test hide device dialogs when background ( true ) |
286 // Test hide device dialogs when background ( true ) |
288 m_handler->hideDeviceDialogs(true); |
287 m_handler->hideDeviceDialogs(true); |
289 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
288 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
290 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
289 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
291 |
290 |
292 // bringToForeground is call |
291 // bringToForeground is call |
293 m_handler->bringToForeground(); |
292 m_handler->bringToForeground(); |
294 QVERIFY(m_bringToForegroundCalled); |
293 QVERIFY(m_bringToForegroundCalled); |
296 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
295 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
297 |
296 |
298 // Test hide device dialogs when foreground ( false ) |
297 // Test hide device dialogs when foreground ( false ) |
299 m_handler->hideDeviceDialogs(false); |
298 m_handler->hideDeviceDialogs(false); |
300 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), 0); |
299 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), 0); |
301 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), (int)ECoeWinPriorityAlwaysAtFront); |
300 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 1); |
302 |
301 |
303 // Test hide device dialogs when foreground ( true ) |
302 // Test hide device dialogs when foreground ( true ) |
304 m_handler->hideDeviceDialogs(true); |
303 m_handler->hideDeviceDialogs(true); |
305 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), 0); |
304 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), 0); |
306 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
305 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
311 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
310 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
312 |
311 |
313 |
312 |
314 // send backgroud is called last |
313 // send backgroud is called last |
315 m_handler->sendToBackground(false); |
314 m_handler->sendToBackground(false); |
316 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
315 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
317 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
316 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
318 |
317 |
319 } |
318 } |
320 |
319 |
321 |
320 |
333 |
332 |
334 cleanup(); |
333 cleanup(); |
335 // send backgroud is called last |
334 // send backgroud is called last |
336 m_handler->sendToBackground(false); |
335 m_handler->sendToBackground(false); |
337 QVERIFY(!g_enableKeyGuardCalled); |
336 QVERIFY(!g_enableKeyGuardCalled); |
338 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
337 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
339 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
338 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
340 |
339 |
341 |
340 |
342 // Test when keyguard is enabled before call |
341 // Test when keyguard is enabled before call |
343 cleanup(); |
342 cleanup(); |
352 |
351 |
353 cleanup(); |
352 cleanup(); |
354 // send backgroud is called last |
353 // send backgroud is called last |
355 m_handler->sendToBackground(false); |
354 m_handler->sendToBackground(false); |
356 QVERIFY(g_enableKeyGuardCalled); |
355 QVERIFY(g_enableKeyGuardCalled); |
357 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
356 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
358 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
357 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
359 |
358 |
360 // Test when keyguard is enabled before call + |
359 // Test when keyguard is enabled before call + |
361 // keyguard is not enabled when phone is background |
360 // keyguard is not enabled when phone is background |
362 cleanup(); |
361 cleanup(); |
372 cleanup(); |
371 cleanup(); |
373 // Test that keyguard is not enabled when phone is background |
372 // Test that keyguard is not enabled when phone is background |
374 CEikonEnv::Static()->RootWin().SetOrdinalPosition(-1, ECoeWinPriorityNormal); |
373 CEikonEnv::Static()->RootWin().SetOrdinalPosition(-1, ECoeWinPriorityNormal); |
375 m_handler->sendToBackground(false); |
374 m_handler->sendToBackground(false); |
376 QVERIFY(!g_enableKeyGuardCalled); |
375 QVERIFY(!g_enableKeyGuardCalled); |
377 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
376 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
378 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
377 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
379 |
378 |
380 |
379 |
381 // Test case where two calls is created and key guard is enabled |
380 // Test case where two calls is created and key guard is enabled |
382 cleanup(); |
381 cleanup(); |
397 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
396 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
398 |
397 |
399 cleanup(); |
398 cleanup(); |
400 m_handler->sendToBackground(false); |
399 m_handler->sendToBackground(false); |
401 QVERIFY(g_enableKeyGuardCalled); |
400 QVERIFY(g_enableKeyGuardCalled); |
402 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
401 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
403 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
402 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
404 |
403 |
405 // Test case where two calls is created and key guard is enabled during middle |
404 // Test case where two calls is created and key guard is enabled during middle |
406 cleanup(); |
405 cleanup(); |
407 |
406 |
421 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
420 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 100); |
422 |
421 |
423 cleanup(); |
422 cleanup(); |
424 m_handler->sendToBackground(false); |
423 m_handler->sendToBackground(false); |
425 QVERIFY(g_enableKeyGuardCalled); |
424 QVERIFY(g_enableKeyGuardCalled); |
426 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition); |
425 QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0); |
427 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
426 QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority); |
428 } |
427 } |
429 |
428 |
430 |
429 |
431 PHONE_TEST_MAIN(TestPhoneVisibilityHandler) |
430 PHONE_TEST_MAIN(TestPhoneVisibilityHandler) |