1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-03-18 23:09:42 +01:00

Improve PlaylistItemDelegate performance, esp. for browsing collections.

This commit is contained in:
Christian Muehlhaeuser 2015-04-08 03:58:38 +02:00
parent 4a277c6f8e
commit 5d256d4224

View File

@ -815,30 +815,21 @@ PlaylistItemDelegate::editorEvent( QEvent* event, QAbstractItemModel* model, con
if ( hoveringArtist && m_hoveringOverArtist != index )
{
QPersistentModelIndex ti = m_hoveringOverArtist;
m_hoveringOverArtist = index;
PlayableItem* item = m_model->sourceModel()->itemFromIndex( m_model->mapToSource( ti ) );
item->requestRepaint();
emit updateIndex( m_hoveringOverArtist );
emit updateIndex( index );
m_hoveringOverArtist = index;
}
if ( !hoveringArtist && m_hoveringOverArtist.isValid() )
{
QPersistentModelIndex ti = m_hoveringOverArtist;
emit updateIndex( m_hoveringOverArtist );
m_hoveringOverArtist = QModelIndex();
PlayableItem* item = m_model->sourceModel()->itemFromIndex( m_model->mapToSource( ti ) );
item->requestRepaint();
}
if ( m_hoveringOver != index )
{
QPersistentModelIndex ti = m_hoveringOver;
m_hoveringOver = index;
PlayableItem* item = m_model->sourceModel()->itemFromIndex( m_model->mapToSource( ti ) );
item->requestRepaint();
emit updateIndex( m_hoveringOver );
emit updateIndex( index );
m_hoveringOver = index;
}
// We return false here so the view can still decide to process/trigger things like D&D events