diff -r 7be2816dbabd -r 137ebc85284b taskswitcher/taskswitcherui/taskswitcherapp/src/tsappview.cpp --- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tsappview.cpp Tue May 11 16:02:39 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherapp/src/tsappview.cpp Tue May 25 12:29:32 2010 +0300 @@ -446,7 +446,6 @@ // Forward event to interested controls iFastSwapArea->HandleSwitchToForegroundEvent(); - iFastSwapArea->UpdateComponentVisibility(); // Check for layout updates CTsAppUi* appUi = static_cast(iCoeEnv->AppUi()); @@ -483,7 +482,6 @@ MakeVisible( ETrue ); } - iFastSwapArea->UpdateComponentVisibility(); DrawDeferred(); TSLOG_OUT(); @@ -601,8 +599,6 @@ { iEvtHandler->EnableEventHandling(ETrue); iExitOnPointerUp = EFalse; - LaunchFeedback(ETouchFeedbackBasic, TTouchFeedbackType( - ETouchFeedbackVibra | ETouchFeedbackAudio), aPointerEvent); if( !DragArea().Contains(aPointerEvent.iParentPosition) || !iFastSwapArea->Count() ) @@ -615,6 +611,13 @@ iExitOnPointerUp = ETrue; } } + else if ( !iAppsHeading->Rect().Contains( aPointerEvent.iParentPosition ) || + !iFastSwapArea->Count() ) + { + // Feedback only on "active" areas of UI + LaunchFeedback(ETouchFeedbackBasic, TTouchFeedbackType( + ETouchFeedbackVibra | ETouchFeedbackAudio), aPointerEvent); + } } else if( TPointerEvent::EButton1Up == aPointerEvent.iType && iExitOnPointerUp ) { @@ -623,6 +626,8 @@ !iAppsHeading->Rect().Contains(aPointerEvent.iParentPosition) ) || !iFastSwapArea->Count() ) { + LaunchFeedback(ETouchFeedbackBasic, TTouchFeedbackType( + ETouchFeedbackVibra | ETouchFeedbackAudio), aPointerEvent); iEikonEnv->EikAppUi()->HandleCommandL(EAknSoftkeyExit); } }