--- a/startupservices/Startup/src/StartupAppUi.cpp Tue Sep 14 21:35:53 2010 +0300
+++ b/startupservices/Startup/src/StartupAppUi.cpp Wed Sep 15 12:23:15 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2002-2008 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2002-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"
@@ -1590,7 +1590,10 @@
TBool CStartupAppUi::DosInOfflineModeL()
{
TRACES("CStartupAppUi::DosInOfflineModeL()");
- if ( iOfflineModeSupported )
+
+ // Do not display the Offline mode query if the AT cmd cenrep key (KStartupATcmdCFUNProfileChange) value set to 1 or 2, iAtcmdCfunProfileChange member holds the key value
+
+ if ( iOfflineModeSupported && (iAtcmdCfunProfileChange == 0) )
{
TRACES1("CStartupAppUi::DosInOfflineModeL(): iOfflineModeSupported == %d", iOfflineModeSupported );
return UiInOfflineMode();
@@ -1653,6 +1656,19 @@
RProperty::Get(KPSUidStartup, KPSSimStatus, status);
TInt reply ( 0 );
+ // AT Command CFUN specifc code
+ CRepository* repository( NULL );
+ TInt errVal;
+ TRAP( errVal, repository = CRepository::NewL(KCRUidStartupConf) );
+ if(errVal == KErrNone)
+ {
+ errVal = repository->Get(KStartupATcmdCFUNProfileChange, iAtcmdCfunProfileChange);
+ if(!errVal && iAtcmdCfunProfileChange >0)
+ {
+ errVal = repository->Set(KStartupATcmdCFUNProfileChange, 0);
+ }
+ }
+ delete repository;
if (status == ESimUsable || status == ESimReadable || status == ESimNotReady || !iSimSupported)
{
TRACES("CStartupAppUi::ShowOfflineModeQueryL(): Show offline mode query if needed");
@@ -1703,6 +1719,18 @@
}
#endif
+ // AT Command CFUN specifc code
+ // AT command CFUN implementation plugin sets the key KStartupATcmdCFUNProfileChange to 1 in the case of Offline to Online profile change
+ // AT command CFUN implementation plugin sets the key KStartupATcmdCFUNProfileChange to 2 in the case of Online to Offline profile change
+ if(iAtcmdCfunProfileChange == 1)
+ {
+ reply = 0;
+ }
+ else if(iAtcmdCfunProfileChange == 2)
+ {
+ reply = 1;
+ }
+ // End AT Command CFUN specifc code
TRACES1("CStartupAppUi::ShowOfflineModeQueryL(): BootIntoOffline=%d.", reply);
TInt err = RProperty::Set( KPSUidStartup,
KStartupBootIntoOffline,