--- a/camerauis/cameraapp/generic/src/CamAppController.cpp Wed Jun 09 09:21:41 2010 +0300
+++ b/camerauis/cameraapp/generic/src/CamAppController.cpp Mon Jun 21 15:19:37 2010 +0300
@@ -3094,6 +3094,7 @@
iNoBurstCancel = EFalse;
iKeyUP = EFalse;
iAFCancelInProgress = EFalse;
+ iTouchCapture = EFalse;
// -------------------------------------------------------
if( ECamTriIdle != iCameraController->ViewfinderState() )
@@ -9035,9 +9036,21 @@
TRAP( aStatus, RestoreSettingsToCameraL() );
}
// fixed toolbar is used only with touch devices
- if ( IsTouchScreenSupported() )
+ if ( IsTouchScreenSupported() && appUi )
{
- appUi->SetToolbarVisibility();// avoid flickering in settings view
+ CAknToolbar* toolbar = appUi->CurrentFixedToolbar();
+ if ( toolbar )
+ {
+ CAknToolbarExtension* toolbarextension = toolbar->ToolbarExtension();
+ if ( toolbarextension && toolbarextension->IsShown() )
+ {
+ appUi->SetToolbarVisibility();// avoid flickering in settings view
+ }
+ else
+ {
+ appUi->SubmergeToolbar();
+ }
+ }
PRINT( _L( "Camera <> SetToolbarVisibility done ") );
}
// else use AP
@@ -9137,6 +9150,15 @@
OstTrace0( CAMERAAPP_PERFORMANCE, DUP5_CCAMAPPCONTROLLER_HANDLECAMERAEVENTL, "e_CAM_APP_CAPTURE_START 1" );
OstTrace0( CAMERAAPP_PERFORMANCE, DUP6_CCAMAPPCONTROLLER_HANDLECAMERAEVENTL, "e_CAM_PRI_SERIAL_SHOOTING 1" );
+ // When image capture is started with touch capture button, a short
+ // delay is added after AF completes, but before capturing starts to
+ // avoid blurry screen sometimes when VF is frozen and before the
+ // snapshot is drawn. Delay also helps to see focus reticule.
+ if( iTouchCapture )
+ {
+ User::After( 50000 );
+ iTouchCapture = EFalse;
+ }
Capture();
}
break;
@@ -11580,6 +11602,15 @@
{
return iSceneModeForcedBySecondaryCamera;
}
-
+
+// ---------------------------------------------------------------------------
+// CCamAppController::SetTouchCapture
+//
+// ---------------------------------------------------------------------------
+//
+void CCamAppController::SetTouchCapture( TBool aTouchCapture )
+ {
+ iTouchCapture = aTouchCapture;
+ }
// End of File