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

* Fixed not properly ending drag and drop operation when leaving the sidebar.

This commit is contained in:
Christian Muehlhaeuser 2011-07-19 23:33:35 +02:00
parent ac726faf1b
commit 066aac7e26
2 changed files with 17 additions and 2 deletions

View File

@ -276,6 +276,7 @@ SourceTreeView::deletePlaylist( const QModelIndex& idxIn )
}
}
void
SourceTreeView::copyPlaylistLink()
{
@ -299,6 +300,7 @@ SourceTreeView::copyPlaylistLink()
}
}
void SourceTreeView::addToLocal()
{
QModelIndex idx = m_contextMenuIndex;
@ -315,7 +317,8 @@ void SourceTreeView::addToLocal()
// this way we cheaply regenerate the needed controls
QString link = GlobalActionManager::instance()->copyPlaylistToClipboard( playlist );
dynplaylist_ptr p = GlobalActionManager::instance()->loadDynamicPlaylist( link, type == SourcesModel::Station );
} else if ( type == SourcesModel::StaticPlaylist )
}
else if ( type == SourcesModel::StaticPlaylist )
{
PlaylistItem* item = itemFromIndex< PlaylistItem >( m_contextMenuIndex );
playlist_ptr playlist = item->playlist();
@ -439,6 +442,16 @@ SourceTreeView::dragEnterEvent( QDragEnterEvent* event )
}
void
SourceTreeView::dragLeaveEvent( QDragLeaveEvent* event )
{
QTreeView::dragLeaveEvent( event );
m_dragging = false;
setDirtyRegion( m_dropRect );
}
void
SourceTreeView::dragMoveEvent( QDragMoveEvent* event )
{
@ -486,6 +499,7 @@ SourceTreeView::dropEvent( QDropEvent* event )
m_dragging = false;
}
void
SourceTreeView::keyPressEvent( QKeyEvent *event )
{
@ -506,6 +520,7 @@ SourceTreeView::keyPressEvent( QKeyEvent *event )
}
}
void
SourceTreeView::paintEvent( QPaintEvent* event )
{

View File

@ -67,7 +67,7 @@ protected:
virtual void paintEvent( QPaintEvent* event );
virtual void dragEnterEvent( QDragEnterEvent* event );
virtual void dragLeaveEvent( QDragLeaveEvent* event ) { Q_UNUSED( event ); m_dragging = false; setDirtyRegion( m_dropRect ); }
virtual void dragLeaveEvent( QDragLeaveEvent* event );
virtual void dragMoveEvent( QDragMoveEvent* event );
virtual void dropEvent( QDropEvent* event );
virtual void keyPressEvent( QKeyEvent* event );