connectionutilities/ConnectionDialogs/cconndlg/src/SelectConnectionDialog.cpp
branchRCL_3
changeset 8 2e6c4614c58e
parent 1 40cb640ef159
child 10 ea6e024ea6f9
--- a/connectionutilities/ConnectionDialogs/cconndlg/src/SelectConnectionDialog.cpp	Tue Feb 02 00:24:11 2010 +0200
+++ b/connectionutilities/ConnectionDialogs/cconndlg/src/SelectConnectionDialog.cpp	Fri Feb 19 23:12:51 2010 +0200
@@ -135,6 +135,15 @@
 
     STATIC_CAST( CEikServAppUi*, 
                 CCoeEnv::Static()->AppUi() )->SuppressAppSwitching( ETrue );
+    
+    // Hide Options button if single-click enabled
+    //
+    if ( static_cast< CAknAppUi* >( iCoeEnv->AppUi() )->IsSingleClickCompatible() )
+        {
+        CEikButtonGroupContainer* cba = CEikButtonGroupContainer::Current();
+        cba->MakeCommandVisible( EAknSoftkeyOptions, EFalse );
+        cba->DrawDeferred();
+        }
 
     iExpiryTimer = CExpiryTimer::NewL( *this );
     iExpiryTimer->Start();
@@ -177,17 +186,7 @@
         }
     else if ( aButtonId == EAknSoftkeyOptions )
         {
-        if ( !( ListBox()->View()->ItemDrawer()->Flags() 
-               & CListItemDrawer::EDisableHighlight ) )
-            {
-            DisplayMenuL();
-            }
-        else
-            {
-            ListBox()->View()->ItemDrawer()->ClearFlags(
-               CListItemDrawer::EDisableHighlight );
-            DrawNow();
-            }
+        DisplayMenuL();
         }
         
     if ( result )
@@ -447,6 +446,26 @@
         cba.DrawDeferred();
         }
 
+    // Show Options button if some listbox row gets highlighted
+    //
+    if ( static_cast< CAknAppUi* >( iCoeEnv->AppUi() )->IsSingleClickCompatible() )
+        {
+        CEikButtonGroupContainer* cba = CEikButtonGroupContainer::Current();
+
+        if ( ( ListBox()->View()->ItemDrawer()->Flags()
+               & CListItemDrawer::ESingleClickDisabledHighlight )
+              )
+            {
+            cba->MakeCommandVisible( EAknSoftkeyOptions, EFalse );
+            }
+        else
+            {
+            cba->MakeCommandVisible( EAknSoftkeyOptions, ETrue );
+            }
+
+        cba->DrawDeferred();
+        }
+    
     CLOG_LEAVEFN( "CSelectConnectionDialog::OfferKeyEventL" );  
 
     return result;