summaryrefslogtreecommitdiffstats
path: root/src/webengine/ui_delegates_manager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/webengine/ui_delegates_manager.cpp')
-rw-r--r--src/webengine/ui_delegates_manager.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/webengine/ui_delegates_manager.cpp b/src/webengine/ui_delegates_manager.cpp
index 2714af9ab..b9162f9b9 100644
--- a/src/webengine/ui_delegates_manager.cpp
+++ b/src/webengine/ui_delegates_manager.cpp
@@ -208,7 +208,7 @@ QObject *UIDelegatesManager::addMenu(QObject *parentMenu, const QString &title,
return 0;
QQmlContext *context = qmlContext(m_view);
QObject *menu = menuComponent->beginCreate(context);
- // Useful when not using Qt Quick Controls' Menu
+ // set visual parent for non-Window-based menus
if (QQuickItem* item = qobject_cast<QQuickItem*>(menu))
item->setParentItem(m_view);
@@ -284,6 +284,9 @@ void UIDelegatesManager::showDialog(QSharedPointer<JavaScriptDialogController> d
QQmlContext *context = qmlContext(m_view);
QObject *dialog = dialogComponent->beginCreate(context);
+ // set visual parent for non-Window-based dialogs
+ if (QQuickItem* item = qobject_cast<QQuickItem*>(dialog))
+ item->setParentItem(m_view);
dialog->setParent(m_view);
QQmlProperty textProp(dialog, QStringLiteral("text"));
textProp.write(dialogController->message());
@@ -369,6 +372,9 @@ void UIDelegatesManager::showDialog(QSharedPointer<AuthenticationDialogControlle
QQmlContext *context = qmlContext(m_view);
QObject *authenticationDialog = authenticationDialogComponent->beginCreate(context);
+ // set visual parent for non-Window-based dialogs
+ if (QQuickItem* item = qobject_cast<QQuickItem*>(authenticationDialog))
+ item->setParentItem(m_view);
authenticationDialog->setParent(m_view);
QString introMessage;