diff --git a/src/libtomahawk/playlist/TrackView.cpp b/src/libtomahawk/playlist/TrackView.cpp index 8732ec53f..5a66e2ba7 100644 --- a/src/libtomahawk/playlist/TrackView.cpp +++ b/src/libtomahawk/playlist/TrackView.cpp @@ -248,7 +248,6 @@ TrackView::autoPlayResolveFinished( const query_ptr& query, int row ) const QModelIndex sib = index.sibling( index.row() + 1, index.column() ); if ( sib.isValid() ) startAutoPlay( sib ); - } @@ -308,7 +307,6 @@ TrackView::tryToPlayItem( const QModelIndex& index ) PlayableItem* item = m_model->itemFromIndex( m_proxyModel->mapToSource( index ) ); if ( item && !item->query().isNull() ) { - m_proxyModel->setCurrentIndex( index ); AudioEngine::instance()->playItem( playlistInterface(), item->query() ); return true; @@ -719,19 +717,14 @@ TrackView::mousePressEvent( QMouseEvent* event ) Tomahawk::playlistinterface_ptr TrackView::playlistInterface() const { - if ( m_playlistInterface.isNull() ) - { - return proxyModel()->playlistInterface(); - } - - return m_playlistInterface; + return proxyModel()->playlistInterface(); } void TrackView::setPlaylistInterface( const Tomahawk::playlistinterface_ptr& playlistInterface ) { - m_playlistInterface = playlistInterface; + proxyModel()->setPlaylistInterface( playlistInterface ); } diff --git a/src/libtomahawk/playlist/TrackView.h b/src/libtomahawk/playlist/TrackView.h index a9fdb09cb..28ccacf8b 100644 --- a/src/libtomahawk/playlist/TrackView.h +++ b/src/libtomahawk/playlist/TrackView.h @@ -146,7 +146,6 @@ private: bool m_updateContextView; - Tomahawk::playlistinterface_ptr m_playlistInterface; QModelIndex m_hoveredIndex; QModelIndex m_contextMenuIndex; diff --git a/src/libtomahawk/playlist/TreeView.cpp b/src/libtomahawk/playlist/TreeView.cpp index d41eedef9..723677aea 100644 --- a/src/libtomahawk/playlist/TreeView.cpp +++ b/src/libtomahawk/playlist/TreeView.cpp @@ -232,12 +232,15 @@ TreeView::onItemActivated( const QModelIndex& index ) if ( item ) { if ( !item->artist().isNull() ) + { ViewManager::instance()->show( item->artist() ); + } else if ( !item->album().isNull() ) + { ViewManager::instance()->show( item->album() ); + } else if ( !item->result().isNull() && item->result()->isOnline() ) { - m_model->setCurrentItem( item->index ); AudioEngine::instance()->playItem( m_proxyModel->playlistInterface(), item->result() ); } }