diff -r 79c6a41cd166 -r 844b978f8d5e idlefw/plugins/wrtdataplugin/src/wrtdataplugin.cpp --- a/idlefw/plugins/wrtdataplugin/src/wrtdataplugin.cpp Thu Dec 17 08:54:17 2009 +0200 +++ b/idlefw/plugins/wrtdataplugin/src/wrtdataplugin.cpp Thu Jan 07 12:55:39 2010 +0200 @@ -87,6 +87,7 @@ iInfo.iUid.iUid = WRTDP_UID_ECOM_IMPLEMENTATION_CONTENTPUBLISHER_DATAPLUGIN; iPluginState = ENone; iHSForeGround = EFalse; + iKeyLockOn = EFalse; iNetworkStatus = EUnknown; iData = CWrtData::NewL(this); @@ -129,7 +130,6 @@ // void CWrtDataPlugin::PublishL() { - TInt err( KErrNone ); User::LeaveIfError( iRfs.Connect() ); TInt observers( iObservers.Count() ); @@ -365,7 +365,6 @@ // void CWrtDataPlugin::RefreshL(TDesC16& aOperation) { - TInt err( KErrNone ); User::LeaveIfError( iRfs.Connect() ); TInt observers( iObservers.Count() ); TInt transactionId = reinterpret_cast( this ); @@ -703,7 +702,7 @@ } case EAiBacklightOn: { - if ( iPluginState == ESuspend ) + if ( iPluginState == ESuspend && !iKeyLockOn ) { iPluginState = EResume; iData->ResumeL(); @@ -712,6 +711,7 @@ } case EAiKeylockDisabled: { + iKeyLockOn = EFalse; // Key lock events considered only if HS is in foreground if ( iHSForeGround && iPluginState == ESuspend ) { @@ -722,6 +722,7 @@ } case EAiKeylockEnabled: { + iKeyLockOn = ETrue; // Key lock events considered only if HS is in foreground if ( iHSForeGround && iPluginState == EResume ) {