diff -r 137ebc85284b -r 1b758917cafc idlehomescreen/xmluirendering/uiengine/src/xnviewadapter.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnviewadapter.cpp Tue May 25 12:29:32 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnviewadapter.cpp Wed Jun 09 09:29:04 2010 +0300 @@ -557,26 +557,27 @@ { return; } - - // Get previous container and then deactivate it - const CXnViewData* previous( iContainer ); - const CXnViewData& active( iAppUiAdapter.ViewManager().ActiveViewData() ); - DeactivateContainerL( EFalse ); - if ( iFlags.IsClear( EIsActivated ) ) { // Some other view than this in this appui is currently active, // postpone container activation return; } + + const CXnViewData& active( iAppUiAdapter.ViewManager().ActiveViewData() ); + + CXnEffectManager* mgr( iAppUiAdapter.EffectManager() ); + + CleanupStack::PushL( TCleanupItem( CleanupEffect, mgr ) ); + + TBool started( + mgr->BeginActivateViewEffect( active, aContainer, aEffect ) ); + + DeactivateContainerL( EFalse ); // Update iContainer = &aContainer; - - CXnEffectManager* mgr( iAppUiAdapter.EffectManager() ); - - CleanupStack::PushL( TCleanupItem( CleanupEffect, mgr ) ); // Disable layout and redraw until container activation is done iAppUiAdapter.UiEngine().DisableRenderUiLC(); @@ -620,18 +621,7 @@ { EnterEditStateL( aContainer, EFalse ); } - - TBool started( - mgr->BeginActivateViewEffect( active, aContainer, aEffect ) ); - - if ( previous ) - { - CXnControlAdapter* previousControl( - previous->Node()->LayoutNode()->Control() ); - - previousControl->MakeVisible( EFalse ); - } - + CXnControlAdapter* adapter( node->Control() ); adapter->MakeVisible( ETrue ); @@ -907,6 +897,11 @@ else { controls[i]->EnterPowerSaveModeL(); + if ( controls[i]->LongTapDetector() && + controls[i]->LongTapDetector()->IsActive() ) + { + controls[i]->LongTapDetector()->Cancel(); + } } }