summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp')
-rw-r--r--src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp
index 16ea216f2..98482ae78 100644
--- a/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp
+++ b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp
@@ -198,6 +198,9 @@ void RenderWidgetHostViewQtDelegateWidget::initAsChild(WebContentsAdapterClient*
disconnect(parentWidget(), &QObject::destroyed,
this, &RenderWidgetHostViewQtDelegateWidget::removeParentBeforeParentDelete);
pagePrivate->view->layout()->addWidget(this);
+ if (QWidget *focusProxy = pagePrivate->view->focusProxy())
+ if (focusProxy != this)
+ pagePrivate->view->layout()->removeWidget(focusProxy);
pagePrivate->view->setFocusProxy(this);
show();
} else
@@ -250,6 +253,7 @@ void RenderWidgetHostViewQtDelegateWidget::setKeyboardFocus()
QGuiApplication::sync();
m_rootItem->forceActiveFocus();
+ setFocus();
}
bool RenderWidgetHostViewQtDelegateWidget::hasKeyboardFocus()