coreapplicationuis/SysAp/Src/sysapdefaultkeyhandler.cpp
branchRCL_3
changeset 57 5e7d68cc22e0
parent 39 469fa8a78de7
child 58 0818dd463d41
--- a/coreapplicationuis/SysAp/Src/sysapdefaultkeyhandler.cpp	Mon Jun 21 15:51:07 2010 +0300
+++ b/coreapplicationuis/SysAp/Src/sysapdefaultkeyhandler.cpp	Thu Jul 15 18:49:38 2010 +0300
@@ -38,6 +38,7 @@
 #include <settingsinternalcrkeys.h>
 #include <keylockpolicyapi.h>
 #include <ctsydomainpskeys.h>
+#include <hwrmdomainpskeys.h>
 #include "sysapdefaultkeyhandler.h"
 #include "sysapcallback.h"
 #include "SysAp.hrh"
@@ -220,39 +221,45 @@
 					}
 				else
 					{ // keylock action is defined by user setting
-                    TInt status(0);
-                    TInt err = iCallStateProperty.Get( status );
-                    if (err == KErrNone)
+                    TInt value = 0;
+                    RProperty::Get(KPSUidStartup, KPSStartupUiPhase, value);
+                    TBool startupOver = (value == EStartupUiPhaseAllDone);
+                    if(startupOver)
                         {
-                        switch ( status )
-                            {
-                            case EPSCTsyCallStateUninitialized:
-                            case EPSCTsyCallStateNone:
-                                {
+						TInt status(0);
+						TInt err = iCallStateProperty.Get( status );
+						if (err == KErrNone)
+							{
+							switch ( status )
+								{
+								case EPSCTsyCallStateUninitialized:
+								case EPSCTsyCallStateNone:
+									{
     
-                                TInt keyGuardSetting;
-                                iSlideRepository->Get( KSlideKeyguard, keyGuardSetting );
-                                switch( ( TSlideSettingKeyguard ) keyGuardSetting )
-                                    {
-                                    case ESlideSettingsKeyguardActivatingOn: 
-                                        iKeylock->EnableKeyLock();
-                                        break;
-                                    case ESlideSettingsKeyguardActivatingAskMe: 
-                                        iKeylock->OfferKeyLock();
-                                        break;
-                                    case ESlideSettingsKeyguardActivatingOff: 
-                                        //do nothing
-                                        break;
-                                    case ESlideSettingsKeyguardActivatingAutomatic: 
-                                        if( iKeypadWasLocked )
-                                            {
-                                            iKeylock->EnableKeyLock();
-                                            }
-                                        break;
-                                    }
-                                }
+									TInt keyGuardSetting;
+									iSlideRepository->Get( KSlideKeyguard, keyGuardSetting );
+									switch( ( TSlideSettingKeyguard ) keyGuardSetting )
+										{
+										case ESlideSettingsKeyguardActivatingOn: 
+											iKeylock->EnableKeyLock();
+											break;
+										case ESlideSettingsKeyguardActivatingAskMe: 
+											iKeylock->OfferKeyLock();
+											break;
+										case ESlideSettingsKeyguardActivatingOff: 
+											//do nothing
+											break;
+										case ESlideSettingsKeyguardActivatingAutomatic: 
+											if( iKeypadWasLocked )
+												{
+												iKeylock->EnableKeyLock();
+												}
+											break;
+										}
+									}
                             default: // any other state
                                 break;
+								}
                             }
                         }
 					}