menufw/menufwui/mmwidgets/src/mmwidgetcontainer.cpp
branchRCL_3
changeset 11 ff572dfe6d86
parent 9 f966699dea19
child 12 9674c1a575e9
equal deleted inserted replaced
9:f966699dea19 11:ff572dfe6d86
    10 * Nokia Corporation - initial contribution.
    10 * Nokia Corporation - initial contribution.
    11 *
    11 *
    12 * Contributors:
    12 * Contributors:
    13 *
    13 *
    14 * Description:
    14 * Description:
    15 *  Version     : %version: MM_71.1.17.1.55 % << Don't touch! Updated by Synergy at check-out.
    15 *  Version     : %version: MM_71.1.17.1.56 % << Don't touch! Updated by Synergy at check-out.
    16 *
    16 *
    17 */
    17 */
    18 
    18 
    19 
    19 
    20 #include <e32keys.h>
    20 #include <e32keys.h>
   231         CMmTemplateLibrary * templateLibrary =
   231         CMmTemplateLibrary * templateLibrary =
   232         static_cast<CMmListBoxItemDrawer*>( iDrawer )->TemplateLibrary();
   232         static_cast<CMmListBoxItemDrawer*>( iDrawer )->TemplateLibrary();
   233         templateLibrary->CleanAndClearCache();
   233         templateLibrary->CleanAndClearCache();
   234         }
   234         }
   235 
   235 
       
   236     TBool highlightVisibleBefore = iWidget->IsVisible() && IsHighlightVisible();
   236     CCoeControl::HandleResourceChange( aType );
   237     CCoeControl::HandleResourceChange( aType );
       
   238     if ( highlightVisibleBefore )
       
   239         {
       
   240         SetHighlightVisibilityL( ETrue );
       
   241         }
   237 
   242 
   238 	if ( aType == KEikDynamicLayoutVariantSwitch && !IsHighlightVisible() )
   243 	if ( aType == KEikDynamicLayoutVariantSwitch && !IsHighlightVisible() )
   239 		{
   244 		{
   240 		TRAP_IGNORE( SetDefaultHighlightL( EFalse ) );
   245 		TRAP_IGNORE( SetDefaultHighlightL( EFalse ) );
   241 		}
   246 		}
  1183 
  1188 
  1184     TInt numberOfItemsBefore (0);
  1189     TInt numberOfItemsBefore (0);
  1185     numberOfItemsBefore = GetMmModel()->NumberOfItems();
  1190     numberOfItemsBefore = GetMmModel()->NumberOfItems();
  1186 
  1191 
  1187     GetMmModel()->SetSuiteModelL( aModel );
  1192     GetMmModel()->SetSuiteModelL( aModel );
       
  1193     
       
  1194     TBool highlightVisibleBefore = iWidget->IsVisible() && IsHighlightVisible();
  1188 
  1195 
  1189     // This needs to be in place (disabling redraw)
  1196     // This needs to be in place (disabling redraw)
  1190     // to udpate widget internal state, however to wait for
  1197     // to udpate widget internal state, however to wait for
  1191     // drawing until all highlight set matters are solved.
  1198     // drawing until all highlight set matters are solved.
  1192     iWidget->MakeVisible(EFalse);
  1199     iWidget->MakeVisible(EFalse);
  1201     if ( prevModel && aModel )
  1208     if ( prevModel && aModel )
  1202         {
  1209         {
  1203         SetupWidgetLayoutL();
  1210         SetupWidgetLayoutL();
  1204         }
  1211         }
  1205     iWidget->MakeVisible(ETrue);
  1212     iWidget->MakeVisible(ETrue);
       
  1213     
       
  1214     if ( highlightVisibleBefore )
       
  1215         {
       
  1216         SetHighlightVisibilityL( ETrue );
       
  1217         }
  1206 
  1218 
  1207     Widget()->View()->ItemDrawer()->ClearFlags(
  1219     Widget()->View()->ItemDrawer()->ClearFlags(
  1208     		CListItemDrawer::EPressedDownState );
  1220     		CListItemDrawer::EPressedDownState );
  1209 	iPostProcessor->StartAt( iWidget->BottomItemIndex() + 1 );
  1221 	iPostProcessor->StartAt( iWidget->BottomItemIndex() + 1 );
  1210     }
  1222     }