Don't animate IconItem in software mode

Summary:
IconItem uses a gorgeous shader to fade between two states. This doesn't
work with software rendering.

Given software rendering is a second class citizen, just skip the
animation.

Test Plan:
Hovered over kickoff.
Went from one to the other, without temporarily disappearing

Reviewers: #plasma, broulik

Reviewed By: #plasma, broulik

Subscribers: plasma-devel, #frameworks

Tags: #plasma, #frameworks

Differential Revision: https://phabricator.kde.org/D8014
This commit is contained in:
David Edmundson 2017-09-27 15:50:44 +01:00
parent 07272a2b98
commit 94235482f9

View File

@ -619,7 +619,13 @@ void IconItem::loadPixmap()
}
//don't animate initial setting
if ((m_animated || m_allowNextAnimation) && !m_oldIconPixmap.isNull() && !m_sizeChanged && !m_blockNextAnimation) {
bool animated = (m_animated || m_allowNextAnimation) && !m_oldIconPixmap.isNull() && !m_sizeChanged && !m_blockNextAnimation;
if (QQuickWindow::sceneGraphBackend() == QLatin1String("software")) {
animated = false;
}
if (animated) {
m_animValue = 0.0;
m_animation->setStartValue((qreal)0);
m_animation->setEndValue((qreal)1);