coreapplicationuis/SysAp/Src/BtSap/SysApBtSapControllerImpl.cpp
branchRCL_3
changeset 63 c2c61fdca848
parent 62 924385140d98
--- a/coreapplicationuis/SysAp/Src/BtSap/SysApBtSapControllerImpl.cpp	Tue Aug 31 15:24:25 2010 +0300
+++ b/coreapplicationuis/SysAp/Src/BtSap/SysApBtSapControllerImpl.cpp	Wed Sep 01 12:24:48 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -26,7 +26,8 @@
 #include <btengconnman.h>
 #include <StringLoader.h>
 #include <coemain.h>
-//#include <SysAp.rsg>
+#include <SysAp.rsg>
+#include <startupdomainpskeys.h>
 
 
 MSysApBtSapController* CreateSysApBtSapControllerL( CSysApAppUi& aSysApAppUi )
@@ -162,7 +163,7 @@
         
         // No RF available so signal bars should be same as in offline mode.
         iSysApAppUi.IgnoreZeroNetworkBarNotifications(ETrue);
-//        TRAP( err, iSysApAppUi.UpdateSignalBarsL( KAknSignalOffLineMode ) );
+        TRAP( err, iSysApAppUi.UpdateSignalBarsL( KAknSignalOffLineMode ) );
 
         iSysApAppUi.SetNetworkConnectionAllowed( ECoreAppUIsNetworkConnectionNotAllowed );
 
@@ -183,8 +184,7 @@
     iFinalizeDisconnectNeeded = EFalse;
     iSysApAppUi.IgnoreZeroNetworkBarNotifications(EFalse);
 
-//    if ( iSysApAppUi.ActiveProfileId() == KOfflineModeProfileId )
-      if(0)
+    if ( iSysApAppUi.ActiveProfileId() == KOfflineModeProfileId )
         {
         if ( iSwitchingToOffline )
             {
@@ -216,6 +216,7 @@
 // ----------------------------------------------------------------------------
 void CSysApBtSapController::HandlePropertyChangedL( const TUid& aCategory, const TUint aKey )
     {
+    TInt simStatus = ESimStatusUninitialized;
     if ( aCategory == KPSUidBluetoothSapConnectionState && aKey == KBTSapConnectionState )
         {
         TInt value( 0 );
@@ -232,7 +233,9 @@
                 break;
             case EBTSapConnecting:
                 TRACES( RDebug::Print( _L("CSysApBtSapController::HandlePropertyChangedL: EBTSapConnecting, iBtSapEnabled=%d"), iBtSapEnabled ) );
-                if ( !iBtSapEnabled )
+                //Ensure SIM is present
+                simStatus = iSysApAppUi.StateOfProperty( KPSUidStartup, KPSSimStatus );
+                if ( !iBtSapEnabled && !(simStatus == ESimNotPresent || simStatus == ESimNotSupported))
                     {
                     iSysApAppUi.InitCloseSimApplicationsL();
                     }