--- a/cmmanager/cmmgr/Framework/Src/cmdlg.cpp Wed Mar 31 22:15:10 2010 +0300
+++ b/cmmanager/cmmgr/Framework/Src/cmdlg.cpp Wed Apr 14 16:22:04 2010 +0300
@@ -107,7 +107,7 @@
, iCmManager( aCmManager )
, iDestUid ( aDestUid )
, iPrioritising ( EFalse )
- , iExitReason( KDialogUserBack )
+ , iExitReason( KDialogUserExit )
, iEscapeArrived( EFalse )
, iExitduringProcessing( EFalse )
, iBackduringProcessing( EFalse )
@@ -136,7 +136,10 @@
// set old text back, if we have it...
if ( iOldTitleText )
{
- TRAP_IGNORE( iTitlePane->SetTextL( *iOldTitleText ) );
+ if ( iExitReason == KDialogUserBack )
+ {
+ TRAP_IGNORE( iTitlePane->SetTextL( *iOldTitleText ) );
+ }
delete iOldTitleText; iOldTitleText = NULL;
}
}
@@ -446,6 +449,7 @@
case EAknSoftkeyBack:
{
iCmManager->WatcherUnRegister();
+ iExitReason = KDialogUserBack;
if ( !iProcessing )
{
@@ -632,7 +636,13 @@
case ECmManagerUiCmdCmUserExit:
{
- iExitReason = KDialogUserExit;
+ if (!iProcessing)
+ {
+ *iSelected = 0;
+ iExitReason = KDialogUserExit;
+ TryExitL( iExitReason );
+ }
+ break;
}
case EAknSoftkeyBack:
@@ -640,6 +650,7 @@
if (!iProcessing)
{
*iSelected = 0;
+ iExitReason = KDialogUserBack;
TryExitL( iExitReason );
}
break;
@@ -840,6 +851,7 @@
iDestDlg->ShowDefaultConnectionNoteL( oldConn );
}
HandleListboxDataChangeL();
+ iListbox->HandleItemRemovalL();
}
break;
@@ -1979,6 +1991,7 @@
if( !iCmManager->DestinationStillExistedL( iCmDestinationImpl ) )
{
iCmManager->WatcherUnRegister();
+ iExitReason = KDialogUserBack;
TryExitL( iExitReason );
return;
}