idlehomescreen/xmluirendering/uiengine/src/xnviewmanager.cpp
changeset 5 c743ef5928ba
parent 4 4d54b72983ae
child 9 f966699dea19
equal deleted inserted replaced
4:4d54b72983ae 5:c743ef5928ba
   870         
   870         
   871     // Activate view
   871     // Activate view
   872     if ( next.Occupied() && !next.Active() )
   872     if ( next.Occupied() && !next.Active() )
   873         {            
   873         {            
   874         iAppUiAdapter.ViewAdapter().ActivateContainerL( next );                
   874         iAppUiAdapter.ViewAdapter().ActivateContainerL( next );                
   875         UpdateWallpaperL( current, next );
       
   876         }
   875         }
   877     }
   876     }
   878 
   877 
   879 // -----------------------------------------------------------------------------
   878 // -----------------------------------------------------------------------------
   880 // CXnViewManager::ActivatePreviousViewL()
   879 // CXnViewManager::ActivatePreviousViewL()
   893         
   892         
   894     // Activate view
   893     // Activate view
   895     if ( prev.Occupied() && !prev.Active() )
   894     if ( prev.Occupied() && !prev.Active() )
   896         {   
   895         {   
   897         iAppUiAdapter.ViewAdapter().ActivateContainerL( prev );
   896         iAppUiAdapter.ViewAdapter().ActivateContainerL( prev );
   898         UpdateWallpaperL( current, prev );
       
   899         }
   897         }
   900     }
   898     }
   901 
   899 
   902 // -----------------------------------------------------------------------------
   900 // -----------------------------------------------------------------------------
   903 // CXnViewManager::AddViewL()
   901 // CXnViewManager::AddViewL()
  1081                 // Activate the next view, or first if in the last view 
  1079                 // Activate the next view, or first if in the last view 
  1082                 CXnViewData& next( NextViewData() );
  1080                 CXnViewData& next( NextViewData() );
  1083                 iAppUiAdapter.ViewAdapter().ActivateContainerL( next );
  1081                 iAppUiAdapter.ViewAdapter().ActivateContainerL( next );
  1084                 }
  1082                 }
  1085 
  1083 
       
  1084             // Remove wallpaper from cache
       
  1085             iAppUiAdapter.ViewAdapter().BgManager().DeleteWallpaper( *view );
       
  1086 
  1086             retval = iHspsWrapper->RemovePluginL( view->PluginId() );
  1087             retval = iHspsWrapper->RemovePluginL( view->PluginId() );
  1087             
  1088             
  1088             // Notify observers of view list change
  1089             // Notify observers of view list change
  1089             NotifyViewRemovalL( *view );
  1090             NotifyViewRemovalL( *view );
  1090 
  1091 
  1135 
  1136 
  1136         iAppUiAdapter.ViewAdapter().ActivateContainerL( next );
  1137         iAppUiAdapter.ViewAdapter().ActivateContainerL( next );
  1137                 
  1138                 
  1138         CXnViewData* view( static_cast< CXnViewData* >( views[ index ] ) );
  1139         CXnViewData* view( static_cast< CXnViewData* >( views[ index ] ) );
  1139 
  1140 
       
  1141         // Remove wallpaper from cache
       
  1142         iAppUiAdapter.ViewAdapter().BgManager().DeleteWallpaper( *view );
       
  1143 
  1140         // Remove plugin from HSPS
  1144         // Remove plugin from HSPS
  1141         iHspsWrapper->RemovePluginL( view->PluginId() );
  1145         iHspsWrapper->RemovePluginL( view->PluginId() );
  1142         
  1146         
  1143         // Notify observers of view list change
  1147         // Notify observers of view list change
  1144         NotifyViewRemovalL( *view );
  1148         NotifyViewRemovalL( *view );
  1294         aViewToActivate.SetActiveL( ETrue );
  1298         aViewToActivate.SetActiveL( ETrue );
  1295         
  1299         
  1296         iHspsWrapper->SetActivePluginL( aViewToActivate.PluginId() );
  1300         iHspsWrapper->SetActivePluginL( aViewToActivate.PluginId() );
  1297 
  1301 
  1298         // Cache update is needed after view activation
  1302         // Cache update is needed after view activation
  1299         UpdateCachesL();        
  1303         UpdateCachesL();       
       
  1304         UpdateWallpaperL( viewToDeactivate, aViewToActivate );
  1300         }
  1305         }
  1301     else
  1306     else
  1302         {
  1307         {
  1303         // Activate first view
  1308         // Activate first view
  1304         aViewToActivate.SetActiveL( ETrue );
  1309         aViewToActivate.SetActiveL( ETrue );
  1308         }
  1313         }
  1309     
  1314     
  1310     NotifyViewActivatedL( aViewToActivate );
  1315     NotifyViewActivatedL( aViewToActivate );
  1311     UpdatePageManagementInformationL();
  1316     UpdatePageManagementInformationL();
  1312     
  1317     
  1313 #ifdef _XN_PERFORMANCE_TEST_
  1318     #ifdef _XN_PERFORMANCE_TEST_
  1314     RDebug::Print( _L( "CXnViewManager::NotifyContainerChangedL - end" ) );
  1319     RDebug::Print( _L( "CXnViewManager::NotifyContainerChangedL - end" ) );
  1315 #endif //_XN_PERFORMANCE_TEST_
  1320 #endif //_XN_PERFORMANCE_TEST_
  1316     }
  1321     }
  1317 
  1322 
  1318 // -----------------------------------------------------------------------------
  1323 // -----------------------------------------------------------------------------
  1639 // CXnViewManager::UpdateWallpaperL
  1644 // CXnViewManager::UpdateWallpaperL
  1640 // -----------------------------------------------------------------------------
  1645 // -----------------------------------------------------------------------------
  1641 //
  1646 //
  1642 void CXnViewManager::UpdateWallpaperL( CXnViewData& aCurrent, CXnViewData& aNew )
  1647 void CXnViewManager::UpdateWallpaperL( CXnViewData& aCurrent, CXnViewData& aNew )
  1643     {
  1648     {
  1644     iEditor->BgManager().WallpaperChanged( aCurrent, aNew );
  1649     iAppUiAdapter.ViewAdapter().BgManager().WallpaperChanged( aCurrent, aNew );
  1645     }
  1650     }
  1646 
  1651 
  1647 // -----------------------------------------------------------------------------
  1652 // -----------------------------------------------------------------------------
  1648 // CXnViewManager::ShowOperationFailedMessageL
  1653 // CXnViewManager::ShowOperationFailedMessageL
  1649 // -----------------------------------------------------------------------------
  1654 // -----------------------------------------------------------------------------