diff -r d486e5e3cc9a -r 51dda465e618 camerauis/cameraapp/generic/src/CamAppui.cpp --- a/camerauis/cameraapp/generic/src/CamAppui.cpp Wed Mar 31 21:06:44 2010 +0300 +++ b/camerauis/cameraapp/generic/src/CamAppui.cpp Wed Apr 14 15:41:04 2010 +0300 @@ -2508,6 +2508,7 @@ case ECamEventSaveLocationChanged: { PRINT( _L( "Camera <> case ECamEventSaveLocationChanged" ) ) + DismissMemoryNoteL(); if ( IsMMCRemovedNotePending() && ( CamUtility::MemoryCardStatus() != ECamMemoryCardNotInserted ) ) { @@ -2518,6 +2519,10 @@ { TRAP_IGNORE( HandleCommandL( ECamCmdRedrawScreen ) ); } + if ( ECamViewStatePostCapture == iViewState ) + { + iTargetViewState = ECamViewStatePreCapture; + } break; } @@ -4356,11 +4361,12 @@ else if(IsMemoryFullOrUnavailable( storeToCheck )) { HBufC* text = StringLoader::LoadLC(R_NOTE_TEXT_MEMORY_FULL); - CAknStaticNoteDialog* note = new( ELeave ) CAknStaticNoteDialog; - note->PrepareLC( R_CAM_OOM_NOTE_OK_CANCEL); - note->SetTextL( *text ); + iMemoryNote = new( ELeave ) CAknStaticNoteDialog; + iMemoryNote->PrepareLC( R_CAM_OOM_NOTE_OK_CANCEL); + iMemoryNote->SetTextL( *text ); iController.StopIdleTimer(); - TInt ret = note->RunDlgLD(); + TInt ret = iMemoryNote->RunDlgLD(); + iMemoryNote = NULL; CleanupStack::PopAndDestroy( text ); if(EAknSoftkeyOk == ret) { @@ -4412,10 +4418,11 @@ R_CAM_MEMORY_SELECT_DIALOG, EFalse, supportedMemTypes ); + CleanupStack::PushL(memoryDialog); TDriveNumber driveNumber = static_cast(KErrNotFound); CAknCommonDialogsBase::TReturnKey result = memoryDialog->ExecuteL( driveNumber ); - + CleanupStack::PopAndDestroy(memoryDialog); if ( result != CAknCommonDialogsBase::TReturnKey( CAknCommonDialogsBase::ERightSoftkey) ) {