Update the window group's min/max size when the hint on any window in

the group changes.
BUG: 214673

svn path=/trunk/KDE/kdebase/workspace/; revision=1049636
This commit is contained in:
Lucas Murray 2009-11-15 15:48:59 +00:00
parent 23dcb5d66a
commit e0bee92151
2 changed files with 6 additions and 6 deletions

View file

@ -270,7 +270,7 @@ void ClientGroup::updateMinMaxSize()
if( minSize_.width() > maxSize_.width() || if( minSize_.width() > maxSize_.width() ||
minSize_.height() > maxSize_.height() ) minSize_.height() > maxSize_.height() )
{ {
kWarning(1212) << "ClientGroup's min size is greater than its' max size. Setting max to min."; //kWarning(1212) << "ClientGroup's min size is greater than its max size. Setting max to min.";
maxSize_ = minSize_; maxSize_ = minSize_;
} }

View file

@ -1564,6 +1564,11 @@ void Client::getWmNormalHints()
} }
if( ! ( xSizeHint.flags & PWinGravity )) if( ! ( xSizeHint.flags & PWinGravity ))
xSizeHint.win_gravity = NorthWestGravity; xSizeHint.win_gravity = NorthWestGravity;
// Update min/max size of this group
if( clientGroup() )
clientGroup()->updateMinMaxSize();
if( isManaged()) if( isManaged())
{ // update to match restrictions { // update to match restrictions
QSize new_size = adjustedSize(); QSize new_size = adjustedSize();
@ -1775,11 +1780,6 @@ void Client::configureRequest( int value_mask, int rx, int ry, int rw, int rh, i
} }
} }
} }
// Update states of all other windows in this group
if( clientGroup() )
clientGroup()->updateStates( this );
// No need to send synthetic configure notify event here, either it's sent together // No need to send synthetic configure notify event here, either it's sent together
// with geometry change, or there's no need to send it. // with geometry change, or there's no need to send it.
// Handling of the real ConfigureRequest event forces sending it, as there it's necessary. // Handling of the real ConfigureRequest event forces sending it, as there it's necessary.