app/src/mpmainwindow.cpp
changeset 45 612c4815aebe
parent 43 0f32e550d9d8
child 47 4cc1412daed0
--- a/app/src/mpmainwindow.cpp	Fri Jul 09 16:27:03 2010 -0500
+++ b/app/src/mpmainwindow.cpp	Fri Jul 23 17:31:12 2010 -0500
@@ -322,11 +322,13 @@
 {
     TX_ENTRY
 
-    // If library changed while playing back, always return to AllSongs collection view.
-    if ( mPlaybackViewPlugin &&
-         mCurrentViewPlugin == mPlaybackViewPlugin &&
-         mCollectionViewPlugin ) {
-
+    // Data might have changed, so other views than Collection or MediaWall are not valid any more.
+    if ( mCurrentViewPlugin == mMediaWallViewPlugin ) {
+        if ( mVerticalViewType != CollectionView ) {
+            mVerticalViewType = CollectionView;
+        }
+    }
+    else if ( mCollectionViewPlugin && mCurrentViewPlugin != mCollectionViewPlugin ) {
         activateView( CollectionView );
         MpViewBase* collectionView = reinterpret_cast<MpViewBase*>(mCollectionViewPlugin->getView());
         collectionView->setDefaultView();
@@ -523,6 +525,7 @@
     TX_ENTRY
     QVariantHash activityData = data.toHash();
     QByteArray serializedRestorePath = activityData.value( "restorePath" ).toByteArray();
+    connect( MpEngineFactory::sharedEngine(), SIGNAL( restorePathFailed() ), this, SLOT( handleRestorePathFailed() ) );
     MpEngineFactory::sharedEngine()->loadActivityData( serializedRestorePath );
     TX_EXIT
 }