uiservicetab/vimpstui/src/cvimpstuitabbedview.cpp
branchRCL_3
changeset 10 78867dafe7eb
parent 0 5e5d6b214f4f
child 11 bef90b82da71
--- a/uiservicetab/vimpstui/src/cvimpstuitabbedview.cpp	Fri Feb 19 22:41:11 2010 +0200
+++ b/uiservicetab/vimpstui/src/cvimpstuitabbedview.cpp	Fri Mar 12 15:41:33 2010 +0200
@@ -336,6 +336,12 @@
 //
 void CVIMPSTUiTabbedView::DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane )
     {    
+    
+    if (iEngine.IsUnInstalled())
+        {
+        // if engine is uninstalled, do not initiate the menu pane.
+        return;
+        }
     // AIW knows its own submenu hooks, so we can return from 
     // here if AIW handled this.
     ReInitializeServiceHandlerL();
@@ -773,14 +779,16 @@
         return;
         }
     ReInitializeServiceHandlerL();
-    TInt serviceCommandId =iServiceHandler->ServiceCmdByMenuCmd(aCommand);
-
-    if ( iContainer && serviceCommandId == KAiwCmdCall )
-        {
-       	MakeVoipCallL();
-        return;
-        }	
-    
+    if ( iServiceHandler )
+    		{
+    		TInt serviceCommandId =iServiceHandler->ServiceCmdByMenuCmd(aCommand);
+				
+		    if ( iContainer && serviceCommandId == KAiwCmdCall )
+		        {
+		       	MakeVoipCallL();
+		        return;
+		        }	
+    	  }
     if( iContainer )
         {
         iContainer->SetClrFindPaneFlag(ETrue);
@@ -1052,7 +1060,17 @@
         NotifyViewActivationL( iView.Id() );
         }
     
-    iView.Cba()->SetCommandSetL( R_IM_CONTACTS_TABBED_VIEW_SOFTKEYS );
+    if (iEngine.IsUnInstalled())
+        {
+    // engine is uninstalled, disable left softkey i.e options and provide only exit.
+        iView.Cba()->SetCommandSetL(R_AVKON_SOFTKEYS_EXIT);
+        }
+    else
+        {
+    // engine is constructed completely, provide tabbed view softkeys.
+        iView.Cba()->SetCommandSetL(R_IM_CONTACTS_TABBED_VIEW_SOFTKEYS);
+        }
+    
 	
 	ReadAndSetOwnUserIdL();