diff --git a/src/libtomahawk/database/databaseimpl.cpp b/src/libtomahawk/database/databaseimpl.cpp index b96859edf..269ac78d0 100644 --- a/src/libtomahawk/database/databaseimpl.cpp +++ b/src/libtomahawk/database/databaseimpl.cpp @@ -564,8 +564,9 @@ DatabaseImpl::resultFromHint( const Tomahawk::query_ptr& origquery ) res->setAlbum( Tomahawk::album_ptr( new Tomahawk::Album( 0, origquery->album(), res->artist() ) ) ); res->setTrack( origquery->track() ); res->setDuration( origquery->duration() ); - res->setFriendlySource( url ); - return res;*/ + res->setFriendlySource( url );*/ + + return res; } res = Tomahawk::result_ptr( new Tomahawk::Result() ); diff --git a/src/resolversmodel.cpp b/src/resolversmodel.cpp index 07e7c8aca..f3664cef9 100644 --- a/src/resolversmodel.cpp +++ b/src/resolversmodel.cpp @@ -39,6 +39,7 @@ ResolversModel::ResolversModel( const QStringList& allResolvers, const QStringLi if( changed ) TomahawkSettings::instance()->setEnabledScriptResolvers( m_enabledResolvers ); + addInstalledResolvers(); } @@ -152,3 +153,30 @@ ResolversModel::enabledResolvers() const return m_enabledResolvers; } +void +ResolversModel::addInstalledResolvers() +{ + QList< QDir > pluginDirs; + + QDir appDir( qApp->applicationDirPath() ); + QDir libDir( CMAKE_INSTALL_PREFIX "/lib" ); + + QDir lib64Dir( appDir ); + lib64Dir.cdUp(); + lib64Dir.cd( "lib64" ); + + pluginDirs << appDir << libDir << lib64Dir << QDir( qApp->applicationDirPath() ); + foreach ( const QDir& pluginDir, pluginDirs ) + { + qDebug() << "Checking directory for resolvers:" << pluginDir; + foreach ( QString fileName, pluginDir.entryList( QStringList() << "*_tomahawkresolver*", QDir::Files ) ){ + if ( fileName.contains( "_tomahawkresolver" ) ) { + const QString path = pluginDir.absoluteFilePath( fileName ); + if( !m_allResolvers.contains( path ) ) { + m_allResolvers.append( path ); + } + } + } + } +} + diff --git a/src/resolversmodel.h b/src/resolversmodel.h index c6cf8fa73..e7890fabf 100644 --- a/src/resolversmodel.h +++ b/src/resolversmodel.h @@ -48,6 +48,8 @@ public: QStringList allResolvers() const; QStringList enabledResolvers() const; private: + void addInstalledResolvers(); + QStringList m_allResolvers; QStringList m_enabledResolvers; }; diff --git a/src/tomahawkapp.cpp b/src/tomahawkapp.cpp index 8059306c2..e3e614b34 100644 --- a/src/tomahawkapp.cpp +++ b/src/tomahawkapp.cpp @@ -182,7 +182,7 @@ TomahawkApp::init() registerMetaTypes(); new TomahawkSettings( this ); - + #ifdef LIBLASTFM_FOUND qDebug() << "Setting NAM."; TomahawkUtils::setNam( lastfm::nam() ); @@ -204,7 +204,7 @@ TomahawkApp::init() } else TomahawkUtils::setProxy( new QNetworkProxy( QNetworkProxy::NoProxy ) ); - + Echonest::Config::instance()->setAPIKey( "JRIHWEP6GPOER2QQ6" ); m_audioEngine = new AudioEngine;