Commit f7a67e0e authored by Vlad Zahorodnii's avatar Vlad Zahorodnii Committed by Vlad Zahorodnii
Browse files

[wayland] Ignore decoration updates if initial state isn't committed yet

or else we might send an unexpected configure event.
parent 1013ee1b
......@@ -1330,6 +1330,8 @@ void XdgToplevelClient::initialize()
bool needsPlacement = !isInitialPositionSet();
updateDecoration(false, false);
if (supportsWindowRules()) {
setupWindowRules(false);
......@@ -1449,13 +1451,15 @@ void XdgToplevelClient::installXdgDecoration(XdgToplevelDecorationV1Interface *d
m_xdgDecoration = decoration;
connect(m_xdgDecoration, &XdgToplevelDecorationV1Interface::destroyed, this, [this] {
if (!isClosing()) {
if (!isClosing() && m_isInitialized) {
updateDecoration(/* check_workspace_pos */ true);
}
});
connect(m_xdgDecoration, &XdgToplevelDecorationV1Interface::preferredModeChanged, this, [this] {
if (m_isInitialized) {
// force is true as we must send a new configure response.
updateDecoration(/* check_workspace_pos */ false, /* force */ true);
}
});
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment