diff options
author | Marko Kangas <marko.kangas@digia.com> | 2014-12-08 12:56:52 +0200 |
---|---|---|
committer | Marko Kangas <marko.kangas@digia.com> | 2014-12-10 11:33:55 +0100 |
commit | e55d89bc29bdb800ddc2cf6be49ac36ca65e2682 (patch) | |
tree | 58a986ccbc2af7f34565ad9a3f393b2de5b03bc8 /src/quick/items/qquickanimatedimage.cpp | |
parent | 7955c63bd171d3f5dabdbe1e794d15701701d993 (diff) |
Add hiDPI @2x retina image support to AnimatedImage
Copied hiDPI image support from base Image-class in to overwritten load()
function that ignored it before.
Change-Id: Iee89b572b523bbf990b6dd0e94c59c71f2b2ed31
Task-number: QTBUG-43104
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Diffstat (limited to 'src/quick/items/qquickanimatedimage.cpp')
-rw-r--r-- | src/quick/items/qquickanimatedimage.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/quick/items/qquickanimatedimage.cpp b/src/quick/items/qquickanimatedimage.cpp index 342394a74c..2fc00ad1d7 100644 --- a/src/quick/items/qquickanimatedimage.cpp +++ b/src/quick/items/qquickanimatedimage.cpp @@ -36,6 +36,7 @@ #ifndef QT_NO_MOVIE +#include <QtGui/qguiapplication.h> #include <QtQml/qqmlinfo.h> #include <QtQml/qqmlfile.h> #include <QtQml/qqmlengine.h> @@ -293,7 +294,13 @@ void QQuickAnimatedImage::load() if (isPlaying() != d->oldPlaying) emit playingChanged(); } else { - QString lf = QQmlFile::urlToLocalFileOrQrc(d->url); + const qreal targetDevicePixelRatio = (window() ? window()->effectiveDevicePixelRatio() : qApp->devicePixelRatio()); + d->devicePixelRatio = 1.0; + + QUrl loadUrl = d->url; + resolve2xLocalFile(d->url, targetDevicePixelRatio, &loadUrl, &d->devicePixelRatio); + QString lf = QQmlFile::urlToLocalFileOrQrc(loadUrl); + if (!lf.isEmpty()) { d->_movie = new QMovie(lf); movieRequestFinished(); |