diff options
| -rw-r--r-- | src/webenginequick/api/qquickwebengineview.cpp | 8 | ||||
| -rw-r--r-- | src/webenginequick/ui_delegates_manager.cpp | 1 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/webenginequick/api/qquickwebengineview.cpp b/src/webenginequick/api/qquickwebengineview.cpp index dae4a3753..ade8b451c 100644 --- a/src/webenginequick/api/qquickwebengineview.cpp +++ b/src/webenginequick/api/qquickwebengineview.cpp @@ -1450,8 +1450,9 @@ QQuickWebEngineViewPrivate::createTouchHandleDelegate(const QMap<int, QImage> &i { Q_Q(QQuickWebEngineView); // lifecycle managed by Chromium's TouchHandleDrawable - QQuickWebEngineTouchHandle *handle = new QQuickWebEngineTouchHandle(); + QQuickWebEngineTouchHandle *handle(nullptr); if (m_touchHandleDelegate) { + handle = new QQuickWebEngineTouchHandle(); QQmlContext *qmlContext = QQmlEngine::contextForObject(q); QQmlContext *context = new QQmlContext(qmlContext, handle); context->setContextObject(handle); @@ -1462,7 +1463,9 @@ QQuickWebEngineViewPrivate::createTouchHandleDelegate(const QMap<int, QImage> &i handle->setItem(item, false); } else { QQuickItem *item = ui()->createTouchHandle(); - Q_ASSERT(item); + if (!item) { + return nullptr; + } QQmlEngine *engine = qmlEngine(item); Q_ASSERT(engine); QQuickWebEngineTouchHandleProvider *touchHandleProvider = @@ -1470,6 +1473,7 @@ QQuickWebEngineViewPrivate::createTouchHandleDelegate(const QMap<int, QImage> &i engine->imageProvider(QQuickWebEngineTouchHandleProvider::identifier())); Q_ASSERT(touchHandleProvider); touchHandleProvider->init(images); + handle = new QQuickWebEngineTouchHandle(); handle->setItem(item, true); } return handle; diff --git a/src/webenginequick/ui_delegates_manager.cpp b/src/webenginequick/ui_delegates_manager.cpp index f2488a7c2..93ac63422 100644 --- a/src/webenginequick/ui_delegates_manager.cpp +++ b/src/webenginequick/ui_delegates_manager.cpp @@ -154,6 +154,7 @@ bool UIDelegatesManager::ensureComponentLoaded(ComponentType type) } return true; } + qWarning("Default ui delegate %s can not be found.", qPrintable(fileName)); return false; } |
