From 1fac8a7bbac28ea871f0a95dfe0b7d6ddcb2512a Mon Sep 17 00:00:00 2001 From: David Edmundson Date: Thu, 5 Mar 2015 15:12:52 +0100 Subject: Create drag pixmaps which match the device pixel ratio --- src/kitemviews/kfileitemlistview.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/kitemviews/kfileitemlistview.cpp') diff --git a/src/kitemviews/kfileitemlistview.cpp b/src/kitemviews/kfileitemlistview.cpp index d249bef91..18b193572 100644 --- a/src/kitemviews/kfileitemlistview.cpp +++ b/src/kitemviews/kfileitemlistview.cpp @@ -29,6 +29,8 @@ #include #include +#include +#include // #define KFILEITEMLISTVIEW_DEBUG @@ -154,8 +156,10 @@ QPixmap KFileItemListView::createDragPixmap(const KItemSet& indexes) const yCount = xCount; } + 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); @@ -168,7 +172,7 @@ QPixmap KFileItemListView::createDragPixmap(const KItemSet& indexes) const 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); -- cgit v1.3