--- a/application/inc/PodcastFeedView.h Mon Oct 25 14:03:39 2010 +0100
+++ b/application/inc/PodcastFeedView.h Mon Oct 25 14:04:32 2010 +0100
@@ -42,7 +42,9 @@
void CheckResumeDownloadL();
void UpdateToolbar(TBool aVisible=ETrue);
TBool ViewingShows();
-
+
+ void CheckConfirmExit();
+
protected:
void ConstructL();
CPodcastFeedView(CPodcastModel& aPodcastModel);
@@ -112,7 +114,7 @@
void HandleUpdateFeedL();
void GetFeedErrorText(TDes &aErrorMessage, TInt aErrorCode);
void OpmlParsingCompleteL(TInt aError, TUint aNumFeedsImported);
-
+
private:
CPodcastModel& iPodcastModel;
TBool iUpdatingRunning;
--- a/application/src/PodcastAppui.cpp Mon Oct 25 14:03:39 2010 +0100
+++ b/application/src/PodcastAppui.cpp Mon Oct 25 14:04:32 2010 +0100
@@ -123,7 +123,7 @@
{
case EAknSoftkeyExit:
{
- Exit();
+ iFeedView->CheckConfirmExit();
break;
}
case EEikCmdExit:
--- a/application/src/PodcastFeedView.cpp Mon Oct 25 14:03:39 2010 +0100
+++ b/application/src/PodcastFeedView.cpp Mon Oct 25 14:04:32 2010 +0100
@@ -880,6 +880,25 @@
showsDownloading.ResetAndDestroy();
}
+void CPodcastFeedView::CheckConfirmExit()
+ {
+ RShowInfoArray showsDownloading;
+ iPodcastModel.ShowEngine().GetShowsDownloadingL(showsDownloading);
+
+ if (showsDownloading.Count() > 0 && !iPodcastModel.SettingsEngine().DownloadSuspended())
+ {
+ TBuf<256> msg;
+ iEikonEnv->ReadResourceL(msg, R_EXIT_SHOWS_DOWNLOADING);
+
+ if (!ShowQueryMessageL(msg))
+ {
+ return;
+ }
+ }
+
+ AppUi()->Exit();
+ }
+
void CPodcastFeedView::OpmlParsingComplete(TInt aError, TUint aNumFeedsImported)
{
TRAP_IGNORE(OpmlParsingCompleteL(aError, aNumFeedsImported));