Q_UNUSED(transform);
m_view->setAutoScroll(false);
+ m_view->hideDropIndicator();
KItemListWidget* widget = hoveredWidget();
if (widget) {
const int index = newHoveredWidget->index();
if (m_model->supportsDropping(index)) {
newHoveredWidget->setHovered(true);
+ } else if (m_model->sortRole().isEmpty()) {
+ // The model supports inserting of items on
+ // the given index. Assure that a drop-indicator
+ // is shown by the view.
+ m_view->showDropIndicator(pos);
}
emit itemHovered(index);
m_view->setAutoScroll(false);
const QPointF pos = transform.map(event->pos());
- const int index = m_view->itemAt(pos);
- emit itemDropEvent(index, event);
+ if (m_model->sortRole().isEmpty()) {
+ // The model supports inserting of items on
+ // a given index.
+ const int dropIndex = m_view->showDropIndicator(pos);
+ m_view->hideDropIndicator();
+ emit itemDropEvent(dropIndex, event);
+ } else {
+ emit itemDropEvent(m_view->itemAt(pos), event);
+ }
return true;
}