photosgallery/viewframework/dataprovider/src/glxthumbnailvarianttype.cpp
branchRCL_3
changeset 35 420f6808bf21
parent 32 78ad99c24f08
child 56 b023a8d2866a
--- a/photosgallery/viewframework/dataprovider/src/glxthumbnailvarianttype.cpp	Tue May 25 12:42:31 2010 +0300
+++ b/photosgallery/viewframework/dataprovider/src/glxthumbnailvarianttype.cpp	Wed Jun 09 09:41:51 2010 +0300
@@ -122,9 +122,20 @@
     if ( aIsFocused && frameCount > 1 && (fsTnmAvailable) )
         {
         GLX_DEBUG1("GlxThumbnailVariantType::CreateAnimatedGifTextureL");
-        TRAP( err, mTextureId = iUiUtility->GlxTextureManager().
-            CreateAnimatedGifTextureL( uri, aSize, aMedia, 
-                                       aMedia.IdSpaceId() ).Id() );
+
+        // If the image is DRM gif, we'll not animate.
+        // Only display the 1st frame. Otherwise animate for normal gif.
+        if (drm)
+            {
+            TRAP( err, mTextureId = iUiUtility->GlxTextureManager().CreateThumbnailTextureL(
+                            aMedia, aMedia.IdSpaceId(), aSize, this ).Id() );
+            }
+        else
+            {
+            TRAP( err, mTextureId = iUiUtility->GlxTextureManager().
+                    CreateAnimatedGifTextureL( uri, aSize, aMedia,
+                            aMedia.IdSpaceId() ).Id() );
+            }
         }
     //URI length could be zero for Media Id based Thumbnail fetch
     else if ( fsTnmAvailable ) 
@@ -200,6 +211,18 @@
         TRAP( err, mTextureId = iUiUtility->GlxTextureManager().CreateIconTextureL( 
     	    icon.bitmapId, resFile, defaultSize ).Id() );
         }
+    else if (KErrNone != thumbnailError && aMedia.Category() == EMPXVideo)
+        {
+        //show larger (twice) default icon for videos, which has errors
+        TSize newSize = defaultSize;
+        newSize += defaultSize;
+        GLX_DEBUG1(
+                "GlxThumbnailVariantType::CreateThumbnailTextureL::Default (video)");
+        TRAP(err, mTextureId
+                = iUiUtility->GlxTextureManager().CreateIconTextureL(
+                        EMbmGlxiconsQgn_prop_image_notcreated, resFile,
+                        newSize).Id());
+        }
     else if( drm && isValid == EGlxDrmRightsInvalid )
     	{
 		//show default image for DRM expired images