diff -r 968773a0b6ef -r c8382f7b54ef emailuis/uicomponents/src/fscontrolbuttonvisualiser.cpp --- a/emailuis/uicomponents/src/fscontrolbuttonvisualiser.cpp Tue Sep 14 20:48:24 2010 +0300 +++ b/emailuis/uicomponents/src/fscontrolbuttonvisualiser.cpp Wed Sep 15 11:52:37 2010 +0300 @@ -221,7 +221,8 @@ if( iUseDefaultBackground ) { ClearBackgroundImage(); - iDefaultBgBrush = CAlfFrameBrush::NewL( iParent->Env(), KAknsIIDQsnFrButtonTb ); + iDefaultBgBrush = CAlfFrameBrush::NewL( iParent->Env(), KAknsIIDQsnFrButtonTb ); + iLastUpdatedButtonModelSize.SetSize(0,0); // prevent code skip in ClearBackgroundImage iBgBrush = iDefaultBgBrush; iButtonLayout->Brushes()->AppendL( iBgBrush, EAlfDoesNotHaveOwnership ); UpdateBarLayout(); @@ -678,14 +679,16 @@ } } + TSize size = iButtonModel->Size(); + // New size for the button background. - iButtonLayout->SetSize( iButtonModel->Size() ); + iButtonLayout->SetSize( size ); // Same size for the content - iButtonContentLayout->SetSize( iButtonModel->Size() ); + iButtonContentLayout->SetSize( size ); - if( iDefaultBgBrush ) + if ( iDefaultBgBrush && size != iLastUpdatedButtonModelSize ) { - TSize size = iButtonModel->Size(); + iLastUpdatedButtonModelSize = size; TRect fullRect = TRect( size ); TRect innerRect = fullRect; innerRect.Shrink( KButtonBorderSize,KButtonBorderSize );