From 457a49063c8f9ec4c470f1d6af8ff60c6ef36659 Mon Sep 17 00:00:00 2001 From: Tang Haixiang <tanghaixiang@uniontech.com> Date: Thu, 25 Feb 2021 18:05:17 +0800 Subject: [PATCH 050/147] xcb: Update _NET_SUPPORTED when the window manager changes it MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In some cases, the application may start before the window manager, and in some window managers _NET_SUPPORTED may be changed. These situations will cause the _NET_SUPPORTED value obtained by Qt to be inconsistent with the window manager. Fixes: QTBUG-91396 Change-Id: I63c6934ad2538cdb9f05926b3748216bd0dcf04e Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit acb0065cc7e4ee849cc87ce72e46b05a61370c43) --- src/plugins/platforms/xcb/qxcbconnection.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp index 730b2efbb9..533018f35b 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.cpp +++ b/src/plugins/platforms/xcb/qxcbconnection.cpp @@ -706,6 +706,8 @@ void QXcbConnection::handleXcbEvent(xcb_generic_event_t *event) QXcbVirtualDesktop *virtualDesktop = virtualDesktopForRootWindow(propertyNotify->window); if (virtualDesktop) virtualDesktop->updateWorkArea(); + } else if (propertyNotify->atom == atom(QXcbAtom::_NET_SUPPORTED)) { + m_wmSupport->updateNetWMAtoms(); } else { HANDLE_PLATFORM_WINDOW_EVENT(xcb_property_notify_event_t, window, handlePropertyNotifyEvent); } -- 2.40.1