camerauis/cameraapp/generic/src/CamUserSceneSetupViewBase.cpp
branchRCL_3
changeset 13 38fb6f7eacd5
parent 11 d486e5e3cc9a
child 15 bf64cebf4673
--- a/camerauis/cameraapp/generic/src/CamUserSceneSetupViewBase.cpp	Wed Apr 14 15:41:04 2010 +0300
+++ b/camerauis/cameraapp/generic/src/CamUserSceneSetupViewBase.cpp	Tue Apr 27 16:19:06 2010 +0300
@@ -244,9 +244,9 @@
 void CCamUserSceneSetupViewBase::HandleForegroundEventL( TBool aForeground )
     {
     PRINT1( _L("Camera => CCamUserSceneSetupViewBase::HandleForegroundEventL %d"), aForeground );
+    CCamAppUi* appUi = static_cast<CCamAppUi*>( AppUi() );
     if ( aForeground )
         {
-        CCamAppUi* appUi = static_cast<CCamAppUi*>( AppUi() );
         // if foreground event is received while in videocall, go to standby with error
         if ( iController.InVideocallOrRinging() && ECamNoOperation == iController.CurrentOperation() )
             {
@@ -286,7 +286,7 @@
             }
         }        
     // To background
-    else
+    else if( !aForeground && appUi->AppInBackground( EFalse ) )
         {
         PRINT( _L("Camera <> CCamUserSceneSetupViewBase::HandleForegroundEventL dec engine count") );
         // Register that we nolonger need the engine
@@ -531,14 +531,14 @@
     {
     PRINT( _L("Camera => CCamUserSceneSetupViewBase::SwitchToCaptureSetupModeL()") );  	   	
     iUserSceneSetupModeActive = EFalse;
+    SetCaptureSetupModeActive(ETrue);
     iContainer->MakeVisible( ETrue );  
     AppUi()->RemoveFromStack( iContainer );
     iVFRequested=ETrue;    
     StartViewFinder();
     iController.StartIdleTimer();
 
-    SetCaptureSetupModeActive(ETrue);
-
+    
     // Remove the view's main container, and add the capture setup 
     // control associated with the input command to the container stack.
     CCamCaptureSetupViewBase::SwitchToCaptureSetupModeL( aSetupCommand, ETrue );