diff -r 4e91876724a2 -r 9ba538e329bd photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginalbums.cpp --- a/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginalbums.cpp Thu Dec 17 08:45:44 2009 +0200 +++ b/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginalbums.cpp Thu Jan 07 12:46:23 2010 +0200 @@ -71,9 +71,11 @@ //Call the base class ConstructL CGlxContentHarvesterPluginBase::ConstructL(EMbmGlxiconsQgn_prop_image_notcreated); - iPeriodic = CPeriodic::NewL( CActive::EPriorityLow ); - iThumbnailContext = CGlxThumbnailContext::NewL(&iThumbnailIterator); - + iPeriodic = CPeriodic::NewL( CActive::EPriorityLow ); + + iUriAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); + iThumbnailAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); + //Register/Subscribe with matrix menu for the notifications GetInterfaceForNotificationL(); SetupPublisherL(KItemIndexAlbums); @@ -437,8 +439,12 @@ { GLX_LOG_INFO("CGlxContentHarvesterPluginAlbums::DestroyMedialist,media list deleted"); RemoveContextAndObserver(); - delete iThumbnailContext; - iThumbnailContext = NULL; + + delete iUriAttributeContext; + iUriAttributeContext = NULL; + delete iThumbnailAttributeContext; + iThumbnailAttributeContext = NULL; + iMediaList->Close(); iMediaList = NULL; } @@ -463,9 +469,10 @@ { iThumbnailIterator.SetRange( KSinglePreviewThumbnail ); } - - iMediaList = CreateMedialistAndThumbnailContextL( TGlxMediaId( - KGlxCollectionPluginAlbumsImplementationUid ),iThumbnailContext); + iMediaList = CreateMedialistAndAttributeContextL( TGlxMediaId( + KGlxCollectionPluginAlbumsImplementationUid ), + iUriAttributeContext,iThumbnailAttributeContext); + AddContextAndObserverL(); } } @@ -542,11 +549,12 @@ if(iMediaList) { iMediaList->AddMediaListObserverL( this ); - iMediaList->AddContextL(iThumbnailContext, KGlxFetchContextPriorityNormal); + iMediaList->AddContextL(iUriAttributeContext, KGlxFetchContextPriorityNormal); + iMediaList->AddContextL(iThumbnailAttributeContext, KGlxFetchContextPriorityLow); } } -// --------------------------------------------------------------------------- +// ---------------------------------------------------------------------------c // CGlxContentHarvesterPluginAlbums::RemoveContextAndObserver // --------------------------------------------------------------------------- // @@ -556,7 +564,8 @@ if(iMediaList) { iMediaList->RemoveMediaListObserver( this ); - iMediaList->RemoveContext(iThumbnailContext); + iMediaList->RemoveContext(iUriAttributeContext); + iMediaList->RemoveContext(iThumbnailAttributeContext); } }