diff -r 121100939521 -r f6c975c3b702 application/src/PodcastAppui.cpp --- a/application/src/PodcastAppui.cpp Thu Feb 25 17:56:45 2010 +0000 +++ b/application/src/PodcastAppui.cpp Thu Feb 25 18:26:52 2010 +0000 @@ -171,13 +171,18 @@ iTabGroup->SetObserver(this); iNaviPane->Pop(); - iNaviPane->PushL(*iNaviDecorator); + SetTabsVisibleL(ETrue); } void CPodcastAppUi::TabChangedL (TInt aIndex) { DP("CPodcastListView::TabChangedL "); + if (!iTabsVisible) + { + return; + } + TUid newview = TUid::Uid(0); TUid messageUid = TUid::Uid(0); @@ -226,6 +231,11 @@ void CPodcastAppUi::TabLeft() { + if (!iTabsVisible) + { + return; + } + TInt ati = iTabGroup->ActiveTabIndex(); if(ati > 0) { SetActiveTab(ati-1); @@ -235,10 +245,30 @@ void CPodcastAppUi::TabRight() { + if (!iTabsVisible) + { + return; + } + TInt ati = iTabGroup->ActiveTabIndex(); - if(ati < iTabGroup->TabCount()-1) { SetActiveTab(ati+1); TabChangedL(ati+1); } } + +void CPodcastAppUi::SetTabsVisibleL(TBool aVisible) + { + if (aVisible) + { + if(!iTabsVisible && iNaviDecorator) + { + iNaviPane->PushL(*iNaviDecorator); + } + } + else if (iTabsVisible) { + iNaviPane->Pop(iNaviDecorator); + } + + iTabsVisible=aVisible; + }