diff --git a/client.cpp b/client.cpp index 500042ad5f..d5b4c5fa4f 100644 --- a/client.cpp +++ b/client.cpp @@ -982,6 +982,9 @@ void Client::minimize(bool avoid_animation) return; } + if (isShade()) // NETWM restriction - KWindowInfo::isMinimized() == Hidden && !Shaded + info->setState(0, NET::Shaded); + #ifdef KWIN_BUILD_SCRIPTING //Scripting call. Does not use a signal/slot mechanism //as ensuring connections was a bit difficult between @@ -1020,6 +1023,9 @@ void Client::unminimize(bool avoid_animation) return; } + if (isShade()) // NETWM restriction - KWindowInfo::isMinimized() == Hidden && !Shaded + info->setState(NET::Shaded, NET::Shaded); + #ifdef KWIN_BUILD_SCRIPTING SWrapper::WorkspaceProxy* ws_wrap = SWrapper::WorkspaceProxy::instance(); if (ws_wrap != 0) {