commsconfig/cscsettingsui/src/cscsettingsuimainview.cpp
branchRCL_3
changeset 14 be41ab7b952f
parent 11 6134b5029079
child 20 65a3ef1d5bd0
--- a/commsconfig/cscsettingsui/src/cscsettingsuimainview.cpp	Tue Apr 27 16:28:03 2010 +0300
+++ b/commsconfig/cscsettingsui/src/cscsettingsuimainview.cpp	Tue May 11 16:04:22 2010 +0300
@@ -85,6 +85,7 @@
         ( statusPane->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) );
         
     iImToneSelectionListOpen = EFalse;
+    iSnapListOpen = EFalse;
     CSCSETUIDEBUG( "CCSCSettingsUiMainView::ConstructL - end" );
     }
 
@@ -847,16 +848,24 @@
 void CCSCSettingsUiMainView::LaunchCMSettingsUiL()
     {
     CSCSETUIDEBUG( "CCSCSettingsUiMainView::LaunchCMSettingsUiL" );
+    if ( iSnapListOpen )
+        {
+        CSCSETUIDEBUG( "CCSCSettingsUiMainView::LaunchCMSettingsUiL  end" );
+        return;
+        }
     
     // Launch Connection Method Settings Ui.
     CCmSettingsUi* cmSettingsUi = CCmSettingsUi::NewL();
     CleanupStack::PushL( cmSettingsUi );
+    iSnapListOpen = ETrue;
     if ( CCmSettingsUi::EExit == cmSettingsUi->RunSettingsL() )
         {
         HandleCommandL( EEikCmdExit );
         }
     CleanupStack::PopAndDestroy( cmSettingsUi );
-    iContainer->UpdateContainerL();
+    iSnapListOpen = EFalse;
+    ResetViewL();
+    CSCSETUIDEBUG( "CCSCSettingsUiMainView::LaunchCMSettingsUiL  end" );
     }
 
 // ---------------------------------------------------------------------------
@@ -952,6 +961,13 @@
     {
     CSCSETUIDEBUG( "CCSCSettingsUiMainView::ResetViewL - IN" );
 
+    // Do not update view if SNAP list is open because in some cases
+    // there will be problems with title and status bar.
+    if ( iSnapListOpen )
+        {
+        CSCSETUIDEBUG( "CCSCSettingsUiMainView::ResetViewL - OUT" );
+        return;
+        }
     // Create container when view is activated.
     if ( !iContainer )
         {