}
const QRect rect = m_view->visualRect(index);
-
- const int gap = 2;
- const int x = rect.left() + gap;
- const int y = rect.top() + gap;
- m_toggle->move(QPoint(x, y));
+ m_toggle->move(QPoint(rect.left(), rect.top()));
+
+ // increase the size of the toggle for large items
+ const int height = m_view->iconSize().height();
+ if (height >= KIconLoader::SizeEnormous) {
+ m_toggle->resize(KIconLoader::SizeMedium, KIconLoader::SizeMedium);
+ } else if (height >= KIconLoader::SizeLarge) {
+ m_toggle->resize(KIconLoader::SizeSmallMedium, KIconLoader::SizeSmallMedium);
+ } else {
+ m_toggle->resize(KIconLoader::SizeSmall, KIconLoader::SizeSmall);
+ }
QItemSelectionModel* selModel = m_view->selectionModel();
m_toggle->setChecked(selModel->isSelected(index));