┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAurélien Gâteau <[email protected]>2013-04-11 11:26:16 +0200
committerAurélien Gâteau <[email protected]>2013-04-12 16:28:52 +0200
commitbf1b4b488119b35ec4ac5177b1ef89c8b2f1d283 (patch)
treeec6f546d711f0af8dc1b67376ab18527ef489941 /src
parentdf8d439c55ea62eeb109bf5ff8f55ae3f386dd70 (diff)
Fix moving image while transitioning to hover pixmap
See: http://youtu.be/OMYO0U0kSL0 REVIEW: 109960 FIXED-IN: 4.10.3
Diffstat (limited to 'src')
-rw-r--r--src/kitemviews/kstandarditemlistwidget.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/kitemviews/kstandarditemlistwidget.cpp b/src/kitemviews/kstandarditemlistwidget.cpp
index 6adb54633..d36265f56 100644
--- a/src/kitemviews/kstandarditemlistwidget.cpp
+++ b/src/kitemviews/kstandarditemlistwidget.cpp
@@ -258,21 +258,21 @@ void KStandardItemListWidget::paint(QPainter* painter, const QStyleOptionGraphic
* https://git.reviewboard.kde.org/r/109614/
*/
// Paint pixmap1 so that pixmap1 = m_pixmap * (1.0 - hoverOpacity())
- QPixmap pixmap1(option->rect.size());
+ QPixmap pixmap1(m_pixmap.size());
pixmap1.fill(Qt::transparent);
{
QPainter p(&pixmap1);
p.setOpacity(1.0 - hoverOpacity());
- drawPixmap(&p, m_pixmap);
+ p.drawPixmap(0, 0, m_pixmap);
}
// Paint pixmap2 so that pixmap2 = m_hoverPixmap * hoverOpacity()
- QPixmap pixmap2(option->rect.size());
+ QPixmap pixmap2(pixmap1.size());
pixmap2.fill(Qt::transparent);
{
QPainter p(&pixmap2);
p.setOpacity(hoverOpacity());
- drawPixmap(&p, m_hoverPixmap);
+ p.drawPixmap(0, 0, m_hoverPixmap);
}
// Paint pixmap2 on pixmap1 using CompositionMode_Plus
@@ -285,7 +285,7 @@ void KStandardItemListWidget::paint(QPainter* painter, const QStyleOptionGraphic
}
// Finally paint pixmap1 on the widget
- painter->drawPixmap(0, 0, pixmap1);
+ drawPixmap(painter, pixmap1);
} else {
drawPixmap(painter, m_hoverPixmap);
}