X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/e63b1de286b09af7a39f27fbc58817d5f9c18f48..43da84eefc7d:/src/kitemviews/kfileitemlistview.cpp diff --git a/src/kitemviews/kfileitemlistview.cpp b/src/kitemviews/kfileitemlistview.cpp index d912a6c5c..c17d54367 100644 --- a/src/kitemviews/kfileitemlistview.cpp +++ b/src/kitemviews/kfileitemlistview.cpp @@ -29,6 +29,8 @@ #include #include +#include +#include // #define KFILEITEMLISTVIEW_DEBUG @@ -154,21 +156,23 @@ QPixmap KFileItemListView::createDragPixmap(const KItemSet& indexes) const yCount = xCount; } + const qreal dpr = scene()->views()[0]->devicePixelRatio(); // Draw the selected items into the grid cells. - QPixmap dragPixmap(xCount * size + xCount, yCount * size + yCount); + QPixmap dragPixmap(QSize(xCount * size + xCount, yCount * size + yCount) * dpr); + dragPixmap.setDevicePixelRatio(dpr); dragPixmap.fill(Qt::transparent); QPainter painter(&dragPixmap); int x = 0; int y = 0; - foreach (int index, indexes) { + for (int index : indexes) { QPixmap pixmap = model()->data(index).value("iconPixmap").value(); if (pixmap.isNull()) { QIcon icon = QIcon::fromTheme(model()->data(index).value("iconName").toString()); pixmap = icon.pixmap(size, size); } else { - KPixmapModifier::scale(pixmap, QSize(size, size)); + KPixmapModifier::scale(pixmap, QSize(size, size) * dpr); } painter.drawPixmap(x, y, pixmap); @@ -392,6 +396,7 @@ void KFileItemListView::applyRolesToModel() roles.insert("text"); roles.insert("isDir"); roles.insert("isLink"); + roles.insert("isHidden"); if (supportsItemExpanding()) { roles.insert("isExpanded"); roles.insert("isExpandable");