photosgallery/viewframework/views/metadatadialog/src/glxmetadatacontainer.cpp
branchRCL_3
changeset 12 ce1c7ad1f18b
parent 11 71da52165949
child 13 bcb43dc84c44
--- a/photosgallery/viewframework/views/metadatadialog/src/glxmetadatacontainer.cpp	Fri Mar 12 15:42:44 2010 +0200
+++ b/photosgallery/viewframework/views/metadatadialog/src/glxmetadatacontainer.cpp	Mon Mar 15 12:40:30 2010 +0200
@@ -959,27 +959,19 @@
             iAvkonAppUi->ProcessCommandL(EGlxCmdRenameCompleted);
             }
         }
-    //updation of tags and albums list based on the medialist callback.
-    if(aList == iTagMediaList ||  aList == iAlbumMediaList)
+    
+    TMPXAttribute titleAttrib(KMPXMediaGeneralTitle);
+    TIdentityRelation< TMPXAttribute > match ( &TMPXAttribute::Match );
+
+    if (KErrNotFound != aAttributes.Find(titleAttrib, match))
         {
-        for (TInt i = aAttributes.Count() - 1; i >= 0 ; i--)
+        if (aList == iTagMediaList)
             {
-            TMPXAttribute titleAtrribute (KMPXMediaGeneralTitle);
-            for (TInt i = aAttributes.Count() - 1; i >= 0 ; i--)
-                { 
-                if( titleAtrribute == aAttributes[i] )
-                    {
-                    if(aList == iTagMediaList)
-						{     
-						UpdateTagsL();
-						}
-					else if(aList == iAlbumMediaList)
-						{
-						UpdateAlbumsL();
-						}          
-                    }           
-                }
-          
+            UpdateTagsL();
+            }
+        else if (aList == iAlbumMediaList)
+            {
+            UpdateAlbumsL();
             }
         }
     
@@ -1097,6 +1089,18 @@
     ListBox()->ItemDrawer()->ColumnData()->SetMarqueeParams (KMarqueeLoopCount,
             KMarqueeScrollAmount, KMarqueeScrollDelay, KMarqueeScrollInterval);
     ListBox()->ItemDrawer()->ColumnData()->EnableMarqueeL(ETrue);
+    
+    //Fetch the current item index
+    TInt index = ListBox()->CurrentItemIndex();
+
+    //Reset the disable marquee flag, so that marquee effect can continue (this is normally reset by 
+    //base class of glxmetaDatadialog::HandlePointerEventL()
+    ListBox()->ItemDrawer()->ClearFlags(CListItemDrawer::EDisableMarquee);
+    
+    //This is the function which actually starts marquee effect. It is anyway being called from base
+    //implementation of OfferKeyEventL(), but for pointer event, we have to call
+    //this function
+    ListBox()->DrawItem(index);
     }    
 // ----------------------------------------------------------------------------
 // HandleCommandCompleteL