--- a/messagingappbase/mce/src/mceui.cpp Tue Feb 02 00:08:43 2010 +0200
+++ b/messagingappbase/mce/src/mceui.cpp Fri Feb 19 22:47:38 2010 +0200
@@ -470,7 +470,8 @@
}
iMsgDeletedStatus = EFalse;
iServerStarted = EFalse ;
-
+ iEmailNotifHandler = NULL;
+#ifndef __WINSCW__
// Handling of NCN reset
TRAPD( err, iEmailNotifHandler = CMceEmailNotifHandler::NewL() );
MCELOGGER_WRITE_FORMAT("ConstructL iEmailNotifHandler err %d", err);
@@ -478,7 +479,7 @@
{
iEmailNotifHandler = NULL;
}
-
+#endif
ZoomLevelChangedL( ReadZoomLevelL() );
iEmailApi = CreateEmailApiL( iSession );
@@ -4892,8 +4893,8 @@
CMsvEntrySelection* sel = iMceListView->ListContainer()
->CurrentItemSelectionL();
CleanupStack::PushL( sel );
-
- if ( sel->Count() <= 0 )
+ TInt selCount = sel->Count();
+ if ( selCount <= 0 )
{
CleanupStack::PopAndDestroy( 2 ); // singleOpWatcher, sel
return;
@@ -4922,6 +4923,10 @@
type, *iSession, op->RequestStatus(), sel );
op->SetOperationL( subOp ); // this takes ownership immediately, so no cleanupstack needed.
+ if ( selCount == 1 )
+ {
+ op->MakeProgressVisibleL(EFalse);
+ }
op->SetProgressDecoder( *subOp );
CleanupStack::Pop( op );
@@ -5504,14 +5509,17 @@
if ( iMceMainView->ListContainer() ) // Cannot set roaming if ListContainer is empty
{
- // Set roaming status
- iMceMainView->ListContainer()->ListItems()->SetRoaming(
- event->RegistrationStatus() == ENetworkRegistrationRoaming );
+ CMceMainViewListItemArray* array = iMceMainView->ListContainer()->ListItems();
+ if ( array && (array->Count() > 0) ) // List item array should not be empty
+ {
+ // Set roaming status
+ array->SetRoaming( event->RegistrationStatus() == ENetworkRegistrationRoaming );
- if ( MceViewActive( EMceMainViewActive ) )
- {
- //update icon only if main view is open
- iMceMainView->ListContainer()->DrawDeferred();
+ if ( MceViewActive( EMceMainViewActive ) )
+ {
+ //update icon only if main view is open
+ iMceMainView->ListContainer()->DrawDeferred();
+ }
}
}
}