diff -r c743ef5928ba -r f966699dea19 menufw/menufwui/mmwidgets/src/mmwidgetcontainer.cpp --- a/menufw/menufwui/mmwidgets/src/mmwidgetcontainer.cpp Tue Feb 02 00:04:13 2010 +0200 +++ b/menufw/menufwui/mmwidgets/src/mmwidgetcontainer.cpp Fri Feb 19 22:42:37 2010 +0200 @@ -12,7 +12,7 @@ * Contributors: * * Description: -* Version : %version: MM_71.1.17.1.51 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_71.1.17.1.55 % << Don't touch! Updated by Synergy at check-out. * */ @@ -237,7 +237,7 @@ if ( aType == KEikDynamicLayoutVariantSwitch && !IsHighlightVisible() ) { - SetDefaultHighlightL( EFalse ); + TRAP_IGNORE( SetDefaultHighlightL( EFalse ) ); } } @@ -612,7 +612,7 @@ TInt index = KErrNotFound; TBool itemExists = iWidget->View()->XYPosToItemIndex( aPointerEvent.iPosition, index ); - + if ( iLongTapDetector ) { if ( aPointerEvent.iType == TPointerEvent::EButton1Down ) @@ -733,38 +733,43 @@ { // activate the model CHnSuiteModel* suiteModel = GetMmModel()->GetSuiteModel(); - if ( suiteModel ) { suiteModel->SetActiveL( aEnable ); } -#ifdef RD_UI_TRANSITION_EFFECTS_LIST - MAknListBoxTfxInternal *transApi = CAknListLoader::TfxApiInternal( - iDrawer->Gc() ); -#endif - if ( !aEnable ) + + if ( ( !!aEnable != !!iPreviousHighlightVisibility ) // Ex-OR + || ( !!aEnable != !!IsHighlightVisible() ) ) // Ex-OR { - iWidget->View()->ItemDrawer()->SetFlags( - CListItemDrawer::ESingleClickDisabledHighlight ); #ifdef RD_UI_TRANSITION_EFFECTS_LIST - if ( transApi ) - { - transApi->Remove( MAknListBoxTfxInternal::EListHighlight ); - } + MAknListBoxTfxInternal *transApi = CAknListLoader::TfxApiInternal( + iDrawer->Gc() ); #endif - } - else - { - iWidget->View()->ItemDrawer()->ClearFlags( - CListItemDrawer::ESingleClickDisabledHighlight ); - } + if ( !aEnable ) + { + iWidget->View()->ItemDrawer()->SetFlags( + CListItemDrawer::ESingleClickDisabledHighlight ); +#ifdef RD_UI_TRANSITION_EFFECTS_LIST + if ( transApi ) + { + transApi->Remove( MAknListBoxTfxInternal::EListHighlight ); + } +#endif + } + else + { + iWidget->View()->ItemDrawer()->ClearFlags( + CListItemDrawer::ESingleClickDisabledHighlight ); + } - if ( IsVisible() ) - { - TInt highlight = GetHighlight(); - CListBoxView* view = Widget()->View(); - Widget()->DrawNow( TRect( view->ItemPos( highlight ), - view->ItemSize( highlight ) ) ); + if ( IsVisible() ) + { + TInt highlight = GetHighlight(); + CListBoxView* view = Widget()->View(); + Widget()->DrawNow( TRect( view->ItemPos( highlight ), + view->ItemSize( highlight ) ) ); + } + iPreviousHighlightVisibility = aEnable; } } @@ -774,7 +779,7 @@ // EXPORT_C TBool CMmWidgetContainer::IsHighlightVisible() { - return !( iWidget->View()->ItemDrawer()->Flags() & + return !( iWidget->View()->ItemDrawer()->Flags() & CListItemDrawer::ESingleClickDisabledHighlight ); } @@ -1595,7 +1600,7 @@ iWidget->MakeVisible(aVisible); if ( !aVisible ) { - SetHighlightVisibilityL( EFalse ); + TRAP_IGNORE( SetHighlightVisibilityL( EFalse ) ); } }