From 0917db504e425fbac558609fec88e49819b2a771 Mon Sep 17 00:00:00 2001 From: Hugo Pereira Da Costa Date: Wed, 27 Jan 2010 20:10:33 +0000 Subject: [PATCH] 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 --- clients/oxygen/oxygenclient.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/clients/oxygen/oxygenclient.cpp b/clients/oxygen/oxygenclient.cpp index 9022d378cb..21da080cd0 100644 --- a/clients/oxygen/oxygenclient.cpp +++ b/clients/oxygen/oxygenclient.cpp @@ -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; }