From 084186bdf655adc5b0384755db61038bd54d7fd5 Mon Sep 17 00:00:00 2001 From: Christian Muehlhaeuser Date: Sat, 19 May 2012 06:13:26 +0200 Subject: [PATCH] * Fixed a few painting glitches. --- src/libtomahawk/playlist/AlbumItemDelegate.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/libtomahawk/playlist/AlbumItemDelegate.cpp b/src/libtomahawk/playlist/AlbumItemDelegate.cpp index 1812a4fa9..230434ca6 100644 --- a/src/libtomahawk/playlist/AlbumItemDelegate.cpp +++ b/src/libtomahawk/playlist/AlbumItemDelegate.cpp @@ -313,7 +313,12 @@ AlbumItemDelegate::editorEvent( QEvent* event, QAbstractItemModel* model, const m_button[ index ] = button; } - m_hoverIndex = index; + if ( m_hoverIndex != index ) + { + emit updateIndex( m_hoverIndex ); + m_hoverIndex = index; + emit updateIndex( index ); + } } QMouseEvent* ev = static_cast< QMouseEvent* >( event ); @@ -378,6 +383,14 @@ AlbumItemDelegate::modelChanged() { m_artistNameRects.clear(); m_hoveringOver = QPersistentModelIndex(); + m_hoverIndex = QPersistentModelIndex(); + + foreach ( ImageButton* button, m_button ) + button->deleteLater(); + m_button.clear(); + foreach ( QWidget* widget, m_subWidgets ) + widget->deleteLater(); + m_subWidgets.clear(); if ( AlbumView* view = qobject_cast< AlbumView* >( m_view ) ) m_model = view->proxyModel();