diff options
author | Florian Bruhin <git@the-compiler.org> | 2017-02-12 15:44:01 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-02-22 09:02:54 +0000 |
commit | 7e7dd26251c355a54b5c34ea4fb27dcda9ee7b94 (patch) | |
tree | 269c5a44123402642348a8e3255cf55d0554a484 /src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp | |
parent | 19a45f7eb3525bcf923f03ae52d83228f17da16d (diff) |
Use Qt::ToolTip as window type for dropdown popus
In 58467ed1950ee070d0907cbdabb8466aba277305, the window type for dropdown popups
was changed from Qt::ToolTip to Qt:Tool to fix issues when using a
QWebEngineView inside a modal dialog on macOS.
However, this causes a separate window to pop up at least under Linux, so we use
Qt::ToolTip again there.
Task-number: QTBUG-58488
Task-number: QTBUG-58544
Change-Id: I951b91980be89a37ee07b19fca684d13b6098af0
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
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.cpp | 4 |
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 e4c8996e1..e7ad5b107 100644 --- a/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp +++ b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp @@ -182,10 +182,14 @@ void RenderWidgetHostViewQtDelegateWidget::initAsPopup(const QRect& screenRect) setAttribute(Qt::WA_ShowWithoutActivating); setFocusPolicy(Qt::NoFocus); +#ifdef Q_OS_MACOS // macOS doesn't like Qt::ToolTip when QWebEngineView is inside a modal dialog, specifically by // not forwarding click events to the popup. So we use Qt::Tool which behaves the same way, but // works on macOS too. setWindowFlags(Qt::Tool | Qt::FramelessWindowHint | Qt::WindowDoesNotAcceptFocus); +#else + setWindowFlags(Qt::ToolTip | Qt::FramelessWindowHint | Qt::WindowDoesNotAcceptFocus); +#endif setGeometry(screenRect); show(); |