From 9898ac50e10f427f0950a19bcd43417722f0df81 Mon Sep 17 00:00:00 2001 From: Tim Jenssen Date: Thu, 17 Jul 2014 14:17:55 +0200 Subject: [PATCH] QmlDesigner: fix that an invalid root item refreshes the preview Change-Id: I8d917dfd92261a88472bd49577731f5bcf468d49 Reviewed-by: Marco Bubke --- .../qml2puppet/instances/quickitemnodeinstance.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp index 9e100d02650..33931cbd70b 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp @@ -392,8 +392,15 @@ QImage QuickItemNodeInstance::renderPreviewImage(const QSize &previewImageSize) { QRectF previewItemBoundingRect = boundingRect(); - if (previewItemBoundingRect.isValid() && quickItem()) - return designerSupport()->renderImageForItem(quickItem(), previewItemBoundingRect, previewImageSize); + if (previewItemBoundingRect.isValid() && quickItem()) { + if (quickItem()->isVisible()) { + return designerSupport()->renderImageForItem(quickItem(), previewItemBoundingRect, previewImageSize); + } else { + QImage transparentImage(previewImageSize, QImage::Format_ARGB32_Premultiplied); + transparentImage.fill(Qt::transparent); + return transparentImage; + } + } return QImage(); }