diff options
Diffstat (limited to 'src/quick')
-rw-r--r-- | src/quick/designer/qquickdesignersupportitems.cpp | 8 | ||||
-rw-r--r-- | src/quick/items/qquickwindow.cpp | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/quick/designer/qquickdesignersupportitems.cpp b/src/quick/designer/qquickdesignersupportitems.cpp index 2003b484ad..874faed0af 100644 --- a/src/quick/designer/qquickdesignersupportitems.cpp +++ b/src/quick/designer/qquickdesignersupportitems.cpp @@ -47,6 +47,7 @@ #include <private/qquicktextinput_p.h> #include <private/qquicktextedit_p.h> #include <private/qquicktransition_p.h> +#include <private/qquickloader_p.h> #include <private/qquickanimation_p.h> #include <private/qqmlmetatype_p.h> @@ -79,6 +80,12 @@ static void stopAnimation(QObject *object) } } +static void makeLoaderSynchronous(QObject *object) +{ + if (QQuickLoader *loader = qobject_cast<QQuickLoader*>(object)) + loader->setAsynchronous(false); +} + static void allSubObjects(QObject *object, QObjectList &objectList) { // don't add null pointer and stop if the object is already in the list @@ -137,6 +144,7 @@ void QQuickDesignerSupportItems::tweakObjects(QObject *object) allSubObjects(object, objectList); for (QObject* childObject : qAsConst(objectList)) { stopAnimation(childObject); + makeLoaderSynchronous(childObject); if (fixResourcePathsForObjectCallBack) fixResourcePathsForObjectCallBack(childObject); } diff --git a/src/quick/items/qquickwindow.cpp b/src/quick/items/qquickwindow.cpp index 816c057ab0..67069c7d15 100644 --- a/src/quick/items/qquickwindow.cpp +++ b/src/quick/items/qquickwindow.cpp @@ -3865,7 +3865,7 @@ QSGTexture *QQuickWindow::createTextureFromImage(const QImage &image) const QSGTexture *QQuickWindow::createTextureFromImage(const QImage &image, CreateTextureOptions options) const { Q_D(const QQuickWindow); - if (!isSceneGraphInitialized()) // check both for d->context and d->context->isValid() + if (!isSceneGraphInitialized() || image.isNull()) // check both for d->context and d->context->isValid() return 0; uint flags = 0; if (options & TextureCanUseAtlas) flags |= QSGRenderContext::CreateTexture_Atlas; |