Added/moved itemData_.setDirty() calls to make sure clientgroupitems are reset properly in

all cases, including when the clientGroup modification request (add,remove, ...) fails.
CCBUG: 223726

svn path=/trunk/KDE/kdebase/workspace/; revision=1081125
This commit is contained in:
Hugo Pereira Da Costa 2010-01-27 20:10:33 +00:00
parent 49deef6c2e
commit 0917db504e

View file

@ -1546,6 +1546,7 @@ namespace Oxygen
// detach tab from window
if( drag->target() == 0 && itemData_.count() > 1 )
{
itemData_.setDirty( true );
removeFromClientGroup( sourceItem_,
widget()->frameGeometry().adjusted(
layoutMetric( LM_OuterPaddingLeft ),
@ -1665,8 +1666,8 @@ namespace Oxygen
{ itemClicked = -1; }
}
moveItemInClientGroup( from, itemClicked );
itemData_.setDirty( true );
moveItemInClientGroup( from, itemClicked );
widget()->update();
} else {
@ -1674,6 +1675,7 @@ namespace Oxygen
setForceActive( true );
int itemClicked( OxygenClient::itemClicked( point, true ) );
long source = QString( groupData->data( clientGroupItemDragMimeType() ) ).toLong();
itemData_.setDirty( true );
moveItemToClientGroup( source, itemClicked );
}
@ -1709,6 +1711,7 @@ namespace Oxygen
{
if( button == itemData_[i].closeButton_.data() )
{
itemData_.setDirty( true );
closeClientGroupItem( i );
return true;
}