From ebb651aa7395bd28474580a10f7d389c72f39e14 Mon Sep 17 00:00:00 2001 From: David Edmundson Date: Mon, 13 Jun 2016 17:56:49 +0200 Subject: [PATCH] Handle device pixel ratio in QTreeWidget animations MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit As we are rendering into a new paint device we need to copy the device pixel ratio from the widget. Task-number: QTBUG-50207 Change-Id: Ica99ae84fe04311edfef817ab719863d627faf64 (cherry picked from commit 49491dd678071661db2e34133c051cb176a83e0b) Reviewed-by: Morten Johan Sørvig --- src/widgets/itemviews/qtreeview.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/widgets/itemviews/qtreeview.cpp b/src/widgets/itemviews/qtreeview.cpp index 01ebae0848..3a2005b95c 100644 --- a/src/widgets/itemviews/qtreeview.cpp +++ b/src/widgets/itemviews/qtreeview.cpp @@ -3244,7 +3244,8 @@ void QTreeViewPrivate::drawAnimatedOperation(QPainter *painter) const QPixmap QTreeViewPrivate::renderTreeToPixmapForAnimation(const QRect &rect) const { Q_Q(const QTreeView); - QPixmap pixmap(rect.size()); + QPixmap pixmap(rect.size() * q->devicePixelRatio()); + pixmap.setDevicePixelRatio(q->devicePixelRatio()); if (rect.size().isEmpty()) return pixmap; pixmap.fill(Qt::transparent); //the base might not be opaque, and we don't want uninitialized pixels.