diff options
author | Tang Haixiang <tanghaixiang@uniontech.com> | 2021-02-25 18:05:17 +0800 |
---|---|---|
committer | Shawn Rutledge <shawn.rutledge@qt.io> | 2021-05-07 12:41:01 +0000 |
commit | acb0065cc7e4ee849cc87ce72e46b05a61370c43 (patch) | |
tree | 407aeb03690b7f13142a9b75d0a58980a65d8c8b /src/plugins/platforms/xcb/qxcbconnection.cpp | |
parent | 57ede9217e55b2122ff44bcc45d14fffe41796fd (diff) |
xcb: Update _NET_SUPPORTED when the window manager changes it
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>
Diffstat (limited to 'src/plugins/platforms/xcb/qxcbconnection.cpp')
-rw-r--r-- | src/plugins/platforms/xcb/qxcbconnection.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp index 1404979fef..b19b070a4d 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.cpp +++ b/src/plugins/platforms/xcb/qxcbconnection.cpp @@ -698,6 +698,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); } |