--- a/phonebookui/Phonebook2/Application/src/CPbk2AppUi.cpp Tue Sep 14 20:54:53 2010 +0300
+++ b/phonebookui/Phonebook2/Application/src/CPbk2AppUi.cpp Wed Sep 15 11:56:55 2010 +0300
@@ -572,9 +572,23 @@
// --------------------------------------------------------------------------
//
void CPbk2AppUi::LeavePbkInMemExitL()
- {
- PBK2_DEBUG_PRINT(PBK2_DEBUG_STRING("CPbk2AppUi::LeavePbkInMemExitL"));
-
+ {
+ PBK2_DEBUG_PRINT(PBK2_DEBUG_STRING("CPbk2AppUi::LeavePbkInMemExitL"));
+
+ TBool dlgOnTop = IsDisplayingMenuOrDialog();
+ // When Phonebook app is to leave in memory with a dialog displaying
+ // on the top of it, an escape key event will be simuliated to notify
+ // the dialog more earlier.
+ if ( dlgOnTop )
+ {
+ TKeyEvent key;
+ key.iRepeats = 0;
+ key.iCode = EKeyEscape;
+ key.iModifiers = 0;
+ key.iScanCode = EStdKeyNull;
+ iCoeEnv->SimulateKeyEventL(key, EEventKey);
+ }
+
// Diasable bring to foreground on view activation event
SetCustomControl(1);