app/src/mpmainwindow.cpp
changeset 54 c5b304f4d89b
parent 48 af3740e3753f
child 58 ed94e1e8390e
equal deleted inserted replaced
48:af3740e3753f 54:c5b304f4d89b
    56       mSettingsViewPlugin(0),
    56       mSettingsViewPlugin(0),
    57       mDetailsViewPlugin(0),
    57       mDetailsViewPlugin(0),
    58       mMediaWallViewPlugin(0),
    58       mMediaWallViewPlugin(0),
    59       mCurrentViewPlugin(0),
    59       mCurrentViewPlugin(0),
    60       mVerticalViewType( CollectionView ),
    60       mVerticalViewType( CollectionView ),
       
    61       mPreviousVerticalViewType( NoView ),
    61       mMusicServices(0),
    62       mMusicServices(0),
    62       mPopupHandler(0),
    63       mPopupHandler(0),
    63       mUserExit( false ),
    64       mUserExit( false ),
    64       mActivityManager(0),
    65       mActivityManager(0),
    65       mMpMediaController(0)
    66       mMpMediaController(0)
   219             break;
   220             break;
   220         case MpCommon::SendToBackground:
   221         case MpCommon::SendToBackground:
   221             lower();
   222             lower();
   222             break;
   223             break;
   223         case MpCommon::ActivateCollectionView:
   224         case MpCommon::ActivateCollectionView:
   224             activateView(CollectionView);
   225             activateView( CollectionView );
   225             break;
   226             break;
   226         case MpCommon::ActivatePlaybackView:
   227         case MpCommon::ActivatePlaybackView:
   227             activateView(PlaybackView);
   228             activateView( PlaybackView );
   228             break;
   229             break;
   229         case MpCommon::ActivateSettingsView:
   230         case MpCommon::ActivateSettingsView:
   230             activateView(SettingsView);
   231             activateView( SettingsView );
   231             break;
   232             break;
   232         case MpCommon::ActivateDetailsView:
   233         case MpCommon::ActivateDetailsView:
   233             activateView(DetailsView);
   234             activateView( DetailsView );
   234             break;
   235             break;
   235         case MpCommon::ActivatePreviousView:
   236         case MpCommon::ActivatePreviousView:
   236             activateView(mVerticalViewType);
   237             if ( orientation() == Qt::Vertical 
       
   238                     && mPreviousVerticalViewType != NoView ) {
       
   239                 activateView( mPreviousVerticalViewType );
       
   240             }
   237             break;
   241             break;
   238     }
   242     }
   239     TX_EXIT
   243     TX_EXIT
   240 }
   244 }
   241 
   245 
   246 {
   250 {
   247         if (orientation == Qt::Vertical) {
   251         if (orientation == Qt::Vertical) {
   248             activateView( mVerticalViewType );   
   252             activateView( mVerticalViewType );   
   249         }
   253         }
   250         else {
   254         else {
   251             activateView(MediaWallView);
   255             activateView( MediaWallView );
   252         }
   256         }
   253 }
   257 }
   254 
   258 
   255 /*!
   259 /*!
   256  Activate the \a viewType view.
   260  Activate the \a viewType view.
   279     // loadView will not reload the view if is already loaded.
   283     // loadView will not reload the view if is already loaded.
   280     mCurrentViewPlugin = loadView( viewType );
   284     mCurrentViewPlugin = loadView( viewType );
   281     Q_ASSERT( mCurrentViewPlugin );
   285     Q_ASSERT( mCurrentViewPlugin );
   282 
   286 
   283     if ( mCurrentViewPlugin ) {
   287     if ( mCurrentViewPlugin ) {
   284         if ( viewType != MediaWallView && viewType != DetailsView ) {
   288         if ( viewType != MediaWallView ) {
       
   289             //storing previous vertical view type only if it is not the same
       
   290             //view, this to be able to keep track of the previously activated 
       
   291             //view excluding media wall switching.
       
   292             if ( mVerticalViewType != viewType ) {
       
   293                 mPreviousVerticalViewType = mVerticalViewType;
       
   294             }
   285             mVerticalViewType = viewType;
   295             mVerticalViewType = viewType;
   286         }
   296         }
   287         addView( reinterpret_cast<HbView*>( mCurrentViewPlugin->getView() ) );
   297         addView( reinterpret_cast<HbView*>( mCurrentViewPlugin->getView() ) );
   288         setCurrentView( reinterpret_cast<HbView*>( mCurrentViewPlugin->getView() ) , doTransition , transitionFlags);
   298         setCurrentView( reinterpret_cast<HbView*>( mCurrentViewPlugin->getView() ) , doTransition , transitionFlags);
   289         mCurrentViewPlugin->activateView();
   299         mCurrentViewPlugin->activateView();
   334             mVerticalViewType = CollectionView;
   344             mVerticalViewType = CollectionView;
   335         }
   345         }
   336     }
   346     }
   337     else if ( mCollectionViewPlugin && mCurrentViewPlugin != mCollectionViewPlugin ) {
   347     else if ( mCollectionViewPlugin && mCurrentViewPlugin != mCollectionViewPlugin ) {
   338         activateView( CollectionView );
   348         activateView( CollectionView );
   339         MpViewBase* collectionView = reinterpret_cast<MpViewBase*>(mCollectionViewPlugin->getView());
   349 
   340         collectionView->setDefaultView();
       
   341     }
   350     }
   342 
   351 
   343     TX_EXIT
   352     TX_EXIT
   344 }
   353 }
   345 
   354