summaryrefslogtreecommitdiffstats
path: root/twin/client.cpp
diff options
context:
space:
mode:
authorDarrell Anderson <[email protected]>2012-12-26 13:35:30 -0600
committerDarrell Anderson <[email protected]>2012-12-26 13:35:30 -0600
commit4d3d2420430fb53000ceda25ae7498e49f6e94b2 (patch)
treef350afc9cba3f615fa3c982b73e57b2272fa8a47 /twin/client.cpp
parentf5c55ca4ce9587598ce81399c2196c876ec55942 (diff)
parent0ef12d60c85f58af9052d83ce1945d71afe16cb4 (diff)
downloadtdebase-4d3d2420430fb53000ceda25ae7498e49f6e94b2.tar.gz
tdebase-4d3d2420430fb53000ceda25ae7498e49f6e94b2.zip
Merge branch 'master' of http://scm.trinitydesktop.org/scm/git/tdebase
Diffstat (limited to 'twin/client.cpp')
-rw-r--r--twin/client.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/twin/client.cpp b/twin/client.cpp
index 35b588db5..f421560a4 100644
--- a/twin/client.cpp
+++ b/twin/client.cpp
@@ -664,6 +664,9 @@ void Client::minimize( bool avoid_animation )
if ( !isMinimizable() || isMinimized())
return;
+ if (isShade()) // NETWM restriction - KWindowInfo::isMinimized() == Hidden && !Shaded
+ info->setState(0, NET::Shaded);
+
Notify::raise( Notify::Minimize );
// SELI mainClients().isEmpty() ??? - and in unminimize() too
@@ -687,6 +690,9 @@ void Client::unminimize( bool avoid_animation )
if( !isMinimized())
return;
+ if (isShade()) // NETWM restriction - KWindowInfo::isMinimized() == Hidden && !Shaded
+ info->setState(NET::Shaded, NET::Shaded);
+
Notify::raise( Notify::UnMinimize );
minimized = false;
if( isOnCurrentDesktop() && isShown( true ))
@@ -947,7 +953,7 @@ void Client::setShade( ShadeMode mode )
workspace()->requestFocus( this );
}
checkMaximizeGeometry();
- info->setState( isShade() ? NET::Shaded : 0, NET::Shaded );
+ info->setState( (isShade() && !isMinimized()) ? NET::Shaded : 0, NET::Shaded );
info->setState( isShown( false ) ? 0 : NET::Hidden, NET::Hidden );
updateVisibility();
updateAllowedActions();