diff options
-rw-r--r-- | src/quick/items/qquickborderimage.cpp | 8 | ||||
-rw-r--r-- | src/quick/items/qquickimagebase_p_p.h | 1 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/quick/items/qquickborderimage.cpp b/src/quick/items/qquickborderimage.cpp index 8d8e4b6a02..07b8958664 100644 --- a/src/quick/items/qquickborderimage.cpp +++ b/src/quick/items/qquickborderimage.cpp @@ -582,10 +582,16 @@ QSGNode *QQuickBorderImage::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeDat qMax<qreal>(0, width() - border->right() - border->left()), qMax<qreal>(0, height() - border->bottom() - border->top())); - if (innerSourceRect != d->oldInnerSourceRect || innerTargetRect != d->oldInnerTargetRect) + QSizeF newSize(width(), height()); + if (innerSourceRect != d->oldInnerSourceRect + || innerTargetRect != d->oldInnerTargetRect + || newSize != d->oldSize) { updateNode = true; + } + d->oldInnerSourceRect = innerSourceRect; d->oldInnerTargetRect = innerTargetRect; + d->oldSize = newSize; } bool updatePixmap = d->pixmapChanged; diff --git a/src/quick/items/qquickimagebase_p_p.h b/src/quick/items/qquickimagebase_p_p.h index ec2f0bb73e..21d11a7448 100644 --- a/src/quick/items/qquickimagebase_p_p.h +++ b/src/quick/items/qquickimagebase_p_p.h @@ -77,6 +77,7 @@ public: qreal devicePixelRatio; QRectF oldInnerSourceRect; QRectF oldInnerTargetRect; + QSizeF oldSize; bool async : 1; bool cache : 1; bool mirror: 1; |