From 53997b5196f1beb3d777a16e7c12a8bbb6688fa8 Mon Sep 17 00:00:00 2001 From: Liang Qi Date: Fri, 26 Aug 2022 19:59:42 +0200 Subject: widgets: avoid setting X11BypassWindowManagerHint in QToolBar MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit when restoring state With X11BypassWindowManagerHint, the floating tool bar was created without control from window manager, which causes it stays on top at all virtual desktops. Fixes: QTBUG-105591 Change-Id: I1868f4e75e1b84f9e81c05d2e927a183a0c635ee Reviewed-by: Tor Arne Vestbø Reviewed-by: Qt CI Bot (cherry picked from commit c3c4d4dda942cab92a8fdcd47a5973f5ecf59d40) Reviewed-by: Qt Cherry-pick Bot --- src/widgets/widgets/qtoolbararealayout.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/widgets/widgets/qtoolbararealayout.cpp b/src/widgets/widgets/qtoolbararealayout.cpp index adddfbc529..6334874a4c 100644 --- a/src/widgets/widgets/qtoolbararealayout.cpp +++ b/src/widgets/widgets/qtoolbararealayout.cpp @@ -1335,7 +1335,7 @@ bool QToolBarAreaLayout::restoreState(QDataStream &stream, const QListsetOrientation(floating ? ((shown & 2) ? Qt::Vertical : Qt::Horizontal) : dock.o); toolBar->setVisible(shown & 1); - toolBar->d_func()->setWindowState(floating, true, rect); + toolBar->d_func()->setWindowState(floating, false, rect); item.preferredSize = item.size; line.toolBarItems.append(item); -- cgit v1.2.3