--- 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