--- 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();
}