Browse Source

Drag'n'Drop fixups.

1. Proper event handling
2. Allow folder moving
3. Allow moving into folders
adaptive-webui-19844
Nick Tiskov 11 years ago
parent
commit
562e9ce108
  1. 24
      src/rss/feedlistwidget.cpp

24
src/rss/feedlistwidget.cpp

@ -173,19 +173,23 @@ void FeedListWidget::updateCurrentFeed(QTreeWidgetItem* new_item) { @@ -173,19 +173,23 @@ void FeedListWidget::updateCurrentFeed(QTreeWidgetItem* new_item) {
}
void FeedListWidget::dragMoveEvent(QDragMoveEvent * event) {
QTreeWidget::dragMoveEvent(event);
QTreeWidgetItem *item = itemAt(event->pos());
// Prohibit dropping onto global unread counter
if (item == m_unreadStickyItem) {
event->ignore();
} else {
if (item && isFolder(item))
event->ignore();
else {
if (selectedItems().contains(m_unreadStickyItem)) {
event->ignore();
} else {
QTreeWidget::dragMoveEvent(event);
}
}
return;
}
// Prohibit dragging of global unread counter
if (selectedItems().contains(m_unreadStickyItem)) {
event->ignore();
return;
}
// Prohibit dropping onto feeds
if (item && isFeed(item)) {
event->ignore();
return;
}
}

Loading…
Cancel
Save