diff --git a/src/quick/items/qquickimagebase.cpp b/src/quick/items/qquickimagebase.cpp index 735910e7ff944c1cd2279043274d2106f5e4fac6..798050d776942c3d09986b0acfc441a69b41a661 100644 --- a/src/quick/items/qquickimagebase.cpp +++ b/src/quick/items/qquickimagebase.cpp @@ -118,7 +118,6 @@ void QQuickImageBase::setSourceSize(const QSize& size) return; d->sourcesize = size; - d->explicitSourceSize = true; emit sourceSizeChanged(); if (isComponentComplete()) load(); @@ -135,14 +134,7 @@ QSize QQuickImageBase::sourceSize() const void QQuickImageBase::resetSourceSize() { - Q_D(QQuickImageBase); - if (!d->explicitSourceSize) - return; - d->explicitSourceSize = false; - d->sourcesize = QSize(); - emit sourceSizeChanged(); - if (isComponentComplete()) - load(); + setSourceSize(QSize()); } bool QQuickImageBase::cache() const @@ -209,7 +201,7 @@ void QQuickImageBase::load() options |= QQuickPixmap::Cache; d->pix.clear(this); pixmapChange(); - d->pix.load(qmlEngine(this), d->url, d->explicitSourceSize ? sourceSize() : QSize(), options); + d->pix.load(qmlEngine(this), d->url, d->sourcesize, options); if (d->pix.isLoading()) { d->progress = 0.0; diff --git a/src/quick/items/qquickimagebase_p_p.h b/src/quick/items/qquickimagebase_p_p.h index 7c2fce1e794012d04de6f0bee7a1daed03705155..6e452387ae8517707c4c4eb8bbb0d7e160d6bc32 100644 --- a/src/quick/items/qquickimagebase_p_p.h +++ b/src/quick/items/qquickimagebase_p_p.h @@ -69,7 +69,6 @@ public: QQuickImageBasePrivate() : status(QQuickImageBase::Null), progress(0.0), - explicitSourceSize(false), async(false), cache(true), mirror(false) @@ -81,7 +80,6 @@ public: QUrl url; qreal progress; QSize sourcesize; - bool explicitSourceSize : 1; bool async : 1; bool cache : 1; bool mirror: 1;