phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlaunchercontainer.cpp
branchRCL_3
changeset 15 e8e3147d53eb
parent 3 04ab22b956c2
child 21 b3431bff8c19
--- a/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlaunchercontainer.cpp	Fri Mar 12 15:41:25 2010 +0200
+++ b/phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlaunchercontainer.cpp	Mon Mar 15 12:39:26 2010 +0200
@@ -60,7 +60,7 @@
 // ----------------------------------------------------------------------------
 //
 CCCAppCommLauncherContainer::~CCCAppCommLauncherContainer()
-    {
+    {    
     delete iListBox;
     delete iBackground;
     delete iModel;
@@ -166,7 +166,7 @@
     // Get the skin background for the view
     iBackground = CAknsBasicBackgroundControlContext::NewL(
         KAknsIIDQsnBgAreaMain, TRect(0, 0, 0, 0), EFalse);
-    LongTapDetectorL();
+    LongTapDetectorL();    
     }
 
 // ----------------------------------------------------------------------------
@@ -473,22 +473,32 @@
         
             VPbkFieldTypeSelectorFactory::TVPbkContactActionTypeSelector
                 contactActionType = iPlugin.Container().SelectedCommunicationMethod();
-            CCAContactorService::TCSParameter param(
-                contactActionType,
-                *iPlugin.ContactHandler().ContactIdentifierLC(),//contactlinkarray
-                paramFlag, 
-                fullName );
-        
-            if ( contactActionType == VPbkFieldTypeSelectorFactory::EVoiceCallSelector ||
-                contactActionType == VPbkFieldTypeSelectorFactory::EVideoCallSelector ||
-                contactActionType == VPbkFieldTypeSelectorFactory::EVOIPCallSelector )
+            
+            if ( !iLongTap && contactActionType
+                            == VPbkFieldTypeSelectorFactory::EFindOnMapSelector )
+                {  
+                iLongTap = ETrue;    
+                DoShowMapCmdL( (TPbk2CommandId)EPbk2ExtensionShowOnMap );
+                }
+            else
                 {
-                iPlugin.StartTimerL();
+                CCAContactorService::TCSParameter param(
+                    contactActionType,
+                    *iPlugin.ContactHandler().ContactIdentifierLC(),//contactlinkarray
+                    paramFlag, 
+                    fullName );
+            
+                if ( contactActionType == VPbkFieldTypeSelectorFactory::EVoiceCallSelector ||
+                    contactActionType == VPbkFieldTypeSelectorFactory::EVideoCallSelector ||
+                    contactActionType == VPbkFieldTypeSelectorFactory::EVOIPCallSelector )
+                    {
+                    iPlugin.StartTimerL();
+                    }
+            
+                contactorService->ExecuteServiceL( param );
+    
+                CleanupStack::PopAndDestroy( 1 );// contactlinkarray
                 }
-        
-            contactorService->ExecuteServiceL( param );
-
-            CleanupStack::PopAndDestroy( 1 );// contactlinkarray
             }
         }
     }
@@ -539,7 +549,14 @@
         if ( contactActionType
         		== VPbkFieldTypeSelectorFactory::EFindOnMapSelector )
         	{
-        	DoShowMapCmdL( (TPbk2CommandId)EPbk2ExtensionShowOnMap );
+            if ( !iLongTap )
+                {
+                DoShowMapCmdL( (TPbk2CommandId)EPbk2ExtensionShowOnMap );
+                }
+            else
+                {
+                iLongTap = EFalse;
+                }
         	}
         else
         	{
@@ -749,10 +766,12 @@
         iPbkCmd = CCCAppCommLauncherPbkCmd::NewL( iPlugin );
     	}
 
+   
     iPbkCmd->ExecutePbk2CmdShowMapL(
             iPlugin.ContactHandler().ContactIdentifierLC(), aCommandId );
 
     CleanupStack::PopAndDestroy( 1 ); // ContactIdentifierLC
+   
     }
 
 // --------------------------------------------------------------------------
@@ -852,4 +871,5 @@
     
     }
 
+
 // End of File