diff -r 79c6a41cd166 -r 844b978f8d5e idlefw/plugins/sapidataplugin/src/sapidataplugin.cpp --- a/idlefw/plugins/sapidataplugin/src/sapidataplugin.cpp Thu Dec 17 08:54:17 2009 +0200 +++ b/idlefw/plugins/sapidataplugin/src/sapidataplugin.cpp Thu Jan 07 12:55:39 2010 +0200 @@ -87,6 +87,7 @@ iInfo.iUid.iUid = SAPIDP_UID_ECOM_IMPLEMENTATION_CONTENTPUBLISHER_DATAPLUGIN; iPluginState = ENone; iHSForeGround = EFalse; + iKeyLockOn = EFalse; iNetworkStatus = EUnknown; iData = CSapiData::NewL(this); @@ -211,7 +212,6 @@ // void CSapiDataPlugin::PublishL() { - TInt err( KErrNone ); User::LeaveIfError( iRfs.Connect() ); TInt observers( iObservers.Count() ); @@ -443,7 +443,6 @@ // void CSapiDataPlugin::RefreshL(TDesC& aContentType, TDesC& aOperation) { - TInt err( KErrNone ); User::LeaveIfError( iRfs.Connect() ); TInt observers( iObservers.Count() ); TInt transactionId = reinterpret_cast( this ); @@ -522,6 +521,7 @@ case EAiKeylockEnabled: { // handled in resume + TRAP_IGNORE( DoResumeL( aReason ) ); break; } default : @@ -686,7 +686,7 @@ } case EAiBacklightOn: { - if ( iPluginState == ESuspend ) + if ( iPluginState == ESuspend && !iKeyLockOn ) { iPluginState = EResume; iData->ResumeL(); @@ -695,6 +695,7 @@ } case EAiKeylockDisabled: { + iKeyLockOn = EFalse; // Key lock events considered only if HS is in foreground if ( iHSForeGround && iPluginState == ESuspend ) { @@ -705,6 +706,7 @@ } case EAiKeylockEnabled: { + iKeyLockOn = ETrue; // Key lock events considered only if HS is in foreground if ( iHSForeGround && iPluginState == EResume ) {