diff -r 2dac0fdba72b -r 191387a8b767 photosgallery/viewframework/views/gridview/src/glxgridviewcontainer.cpp --- a/photosgallery/viewframework/views/gridview/src/glxgridviewcontainer.cpp Wed Apr 14 15:57:24 2010 +0300 +++ b/photosgallery/viewframework/views/gridview/src/glxgridviewcontainer.cpp Tue Apr 27 16:37:53 2010 +0300 @@ -182,6 +182,9 @@ GlxFullThumbnailAttributeId( EFalse, iGridIconSize.iWidth, iGridIconSize.iHeight ) ); CreateGridL(); + + iIsDialogLaunched = EFalse; + iIsMMCRemoved = EFalse; iMMCNotifier = CGlxMMCNotifier::NewL(*this); } @@ -931,9 +934,19 @@ { iHgGrid->InitScreenL(GetHgGridRect()); } + if (iIsDialogLaunched && iIsMMCRemoved) + { + iGlxGridViewObserver.HandleGridEventsL(EAknSoftkeyExit); + } retVal = ETrue; + iIsDialogLaunched = EFalse; break; } + case EGlxCmdDialogLaunched: + { + iIsDialogLaunched = ETrue; + break; + } default: break; } @@ -987,6 +1000,10 @@ void CGlxGridViewContainer::HandleMMCRemovalL() { TRACER("CGlxGridViewContainer::HandleMMCRemovalL()"); - iGlxGridViewObserver.HandleGridEventsL(EAknSoftkeyExit); + iIsMMCRemoved = ETrue; + if(!iIsDialogLaunched) + { + iGlxGridViewObserver.HandleGridEventsL(EAknSoftkeyExit); + } } //end of file