diff -r a60acebbbd9d -r 78ad99c24f08 photosgallery/viewframework/views/metadatadialog/src/glximgvwrmetadatacontainer.cpp --- a/photosgallery/viewframework/views/metadatadialog/src/glximgvwrmetadatacontainer.cpp Tue May 11 16:13:40 2010 +0300 +++ b/photosgallery/viewframework/views/metadatadialog/src/glximgvwrmetadatacontainer.cpp Tue May 25 12:42:31 2010 +0300 @@ -237,8 +237,17 @@ GLX_LOG_INFO("CGlxImgVwrMetadataContainer::Licence item"); CGlxDRMUtility* drmUtility = CGlxDRMUtility::InstanceL(); CleanupClosePushL(*drmUtility); - drmUtility->ShowDRMDetailsPaneL(iItemMediaList->Item(0).Uri()); + CreateImageViewerInstanceL(); + if(iImageViewerInstance->IsPrivate()) + { + drmUtility->ShowDRMDetailsPaneL(iImageViewerInstance->ImageFileHandle()); + } + else + { + drmUtility->ShowDRMDetailsPaneL(iItemMediaList->Item(0).Uri()); + } CleanupStack::PopAndDestroy(drmUtility); + DeleteImageViewerInstance(); } } } @@ -735,6 +744,30 @@ } return ETrue; } - + +// ----------------------------------------------------------------------------- +// CreateImageViewerInstanceL +// ----------------------------------------------------------------------------- +// +void CGlxImgVwrMetadataContainer::CreateImageViewerInstanceL() + { + TRACER("CGlxImgVwrMetadataContainer::CreateImageViewerInstanceL"); + iImageViewerInstance = CGlxImageViewerManager::InstanceL(); + __ASSERT_ALWAYS(iImageViewerInstance, Panic(EGlxPanicNullPointer)); + } + +// ----------------------------------------------------------------------------- +// DeleteImageViewerInstance +// ----------------------------------------------------------------------------- +// +void CGlxImgVwrMetadataContainer::DeleteImageViewerInstance() + { + TRACER("CGlxImgVwrMetadataContainer::DeleteImageViewerInstance"); + if ( iImageViewerInstance ) + { + iImageViewerInstance->DeleteInstance(); + } + } + //End of file