From 0ba9a9e07645ed2405c8a0a31eeab72e8f174fde Mon Sep 17 00:00:00 2001 From: Leo Franchi Date: Thu, 13 Oct 2011 22:39:25 -0400 Subject: [PATCH] Select the just-created xspf as soon as it is imported --- src/libtomahawk/utils/xspfloader.cpp | 2 +- src/tomahawkwindow.cpp | 7 +++++++ src/tomahawkwindow.h | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/libtomahawk/utils/xspfloader.cpp b/src/libtomahawk/utils/xspfloader.cpp index 8de43cf62..1587c18fe 100644 --- a/src/libtomahawk/utils/xspfloader.cpp +++ b/src/libtomahawk/utils/xspfloader.cpp @@ -34,7 +34,7 @@ XSPFLoader::XSPFLoader( bool autoCreate, bool autoUpdate, QObject *parent ) : QObject( parent ) , m_autoCreate( autoCreate ) , m_autoUpdate( autoUpdate ) - , m_autoResolve( false ) + , m_autoResolve( true ) , m_NS("http://xspf.org/ns/0/") { qRegisterMetaType< XSPFErrorCode >("XSPFErrorCode"); diff --git a/src/tomahawkwindow.cpp b/src/tomahawkwindow.cpp index 80069e55a..6c033668b 100644 --- a/src/tomahawkwindow.cpp +++ b/src/tomahawkwindow.cpp @@ -504,6 +504,7 @@ TomahawkWindow::loadSpiff() XSPFLoader* loader = new XSPFLoader( true, autoUpdate ); connect( loader, SIGNAL( error( XSPFLoader::XSPFErrorCode ) ), SLOT( onXSPFError( XSPFLoader::XSPFErrorCode ) ) ); + connect( loader, SIGNAL( ok( Tomahawk::playlist_ptr ) ), SLOT( onXSPFOk( Tomahawk::playlist_ptr ) ) ); loader->load( url ); } #endif @@ -521,11 +522,17 @@ TomahawkWindow::loadXspfFinished( int ret ) XSPFLoader* loader = new XSPFLoader( true, autoUpdate ); connect( loader, SIGNAL( error( XSPFLoader::XSPFErrorCode ) ), SLOT( onXSPFError( XSPFLoader::XSPFErrorCode ) ) ); + connect( loader, SIGNAL( ok( Tomahawk::playlist_ptr ) ), SLOT( onXSPFOk( Tomahawk::playlist_ptr ) ) ); loader->load( url ); } d->deleteLater(); } +void +TomahawkWindow::onXSPFOk( const Tomahawk::playlist_ptr& pl ) +{ + ViewManager::instance()->show( pl ); +} void diff --git a/src/tomahawkwindow.h b/src/tomahawkwindow.h index f91874246..5e0fcaa1d 100644 --- a/src/tomahawkwindow.h +++ b/src/tomahawkwindow.h @@ -85,6 +85,7 @@ private slots: void onSipError(); void onXSPFError( XSPFLoader::XSPFErrorCode error ); + void onXSPFOk( const Tomahawk::playlist_ptr& ); void addPeerManually();