diff -r bb1748e0dd9b -r c6e8afe0ba85 iaupdate/IAD/backgroundchecker/src/iaupdatebgrefreshtimer.cpp --- a/iaupdate/IAD/backgroundchecker/src/iaupdatebgrefreshtimer.cpp Tue Jun 29 16:50:12 2010 +0300 +++ b/iaupdate/IAD/backgroundchecker/src/iaupdatebgrefreshtimer.cpp Thu Jul 08 20:28:00 2010 +0300 @@ -43,7 +43,6 @@ //MACROS _LIT8( KRefreshFromNetworkDenied, "1" ); _LIT(KIAUpdateLauncherExe, "iaupdatelauncher.exe" ); -_LIT8( KFirstTimeCase, "0" ); //CONSTANTS const TUint KIADUpdateLauncherUid( 0x2001FE2F ); @@ -255,10 +254,16 @@ case ERetryMode: { - // Check if indicator should be shown - + // Should indicator be shown ? + TInt entries = NrOfIndicatorEntries(); + if ( entries ) + { + iSoftNotification->SetNrOfUpdates( entries ); + iSoftNotification->ShowIndicatorL(); + } StartUpdatesCheckingL(); + break; } @@ -445,7 +450,6 @@ return err; } - // ---------------------------------------------------------- // CIAUpdateBGTimer::ModeL() // ---------------------------------------------------------- @@ -466,6 +470,25 @@ return err; } +// ---------------------------------------------------------- +// CIAUpdateBGTimer::NrOfIndicatorEntries() +// ---------------------------------------------------------- +TInt CIAUpdateBGTimer::NrOfIndicatorEntries() + { + iInternalFile->ReadControllerDataL(); + return iInternalFile->NrOfIndicatorEntries(); + } + + +// ---------------------------------------------------------- +// CIAUpdateBGTimer::SetNrOfIndicatorEntriesL() +// ---------------------------------------------------------- +TInt CIAUpdateBGTimer::SetNrOfIndicatorEntriesL( TInt aEntries ) + { + iInternalFile->SetNrOfIndicatorEntries( aEntries ); + TRAPD( err,iInternalFile->WriteControllerDataL() ); + return err; + } // ---------------------------------------------------------- // CIAUpdateBGTimer::RetryTimesL() @@ -1222,7 +1245,9 @@ } else { - //accepted, launch iad + //accepted, clear indicator entries + SetNrOfIndicatorEntriesL( 0 ); + // start IAD StartIaupdateL(); } break; @@ -1386,9 +1411,10 @@ // CleanupStack::PopAndDestroy( titleText ); // CleanupStack::PopAndDestroy( titleText ); - // Set number of updates + // Set number of updates for dialog and internal file iSoftNotification->SetNrOfUpdates( aNrOfUpdates ); - + SetNrOfIndicatorEntriesL( aNrOfUpdates ); + iSoftNotification->ShowNotificationL(); FLOG("[bgchecker] LaunchNotificationL 1");