amarok/playlist_default_layout_fix.diff
2009-11-16 15:28:46 +00:00

29 lines
1.3 KiB
Diff

diff --git a/src/playlist/layouts/LayoutManager.cpp b/src/playlist/layouts/LayoutManager.cpp
index b2903ee..541f989 100644
--- a/src/playlist/layouts/LayoutManager.cpp
+++ b/src/playlist/layouts/LayoutManager.cpp
@@ -55,6 +55,8 @@ LayoutManager::LayoutManager()
KConfigGroup config = Amarok::config("Playlist Layout");
m_activeLayout = config.readEntry( "CurrentLayout", "Default" );
+ if( !layouts().contains( m_activeLayout ) )
+ m_activeLayout = "Default";
Playlist::ModelStack::instance()->top()->setGroupingCategory( activeLayout().groupBy() );
}
diff --git a/src/playlist/layouts/PlaylistLayoutEditDialog.cpp b/src/playlist/layouts/PlaylistLayoutEditDialog.cpp
index 166879c..03fd529 100644
--- a/src/playlist/layouts/PlaylistLayoutEditDialog.cpp
+++ b/src/playlist/layouts/PlaylistLayoutEditDialog.cpp
@@ -440,7 +440,10 @@ void PlaylistLayoutEditDialog::reject() //SLOT
DEBUG_BLOCK
debug() << "Applying initial layout: " << m_firstActiveLayout;
- LayoutManager::instance()->setActiveLayout( m_firstActiveLayout );
+ if( layoutListWidget->findItems( m_firstActiveLayout, Qt::MatchExactly ).isEmpty() )
+ LayoutManager::instance()->setActiveLayout( "Default" );
+ else
+ LayoutManager::instance()->setActiveLayout( m_firstActiveLayout );
QDialog::reject();
}