diff -r 224b21efc2d4 -r 9352913932ef coreapplicationuis/SysAp/Src/SysApAppUi.cpp --- a/coreapplicationuis/SysAp/Src/SysApAppUi.cpp Fri Aug 20 13:36:26 2010 +0300 +++ b/coreapplicationuis/SysAp/Src/SysApAppUi.cpp Fri Sep 03 16:56:10 2010 +0300 @@ -465,6 +465,10 @@ MMCStatusChangedL(); iHideFirstBeep = EFalse; #else // RD_MULTIPLE_DRIVE + if(iSysApDriveList == NULL) + { + iSysApDriveList = CSysApDriveList::NewL( iEikonEnv->FsSession() ); + } iSysApDriveList->MountDrive( iSysApDriveList->DefaultMemoryCard() ); UpdateInsertedMemoryCardsL(); #endif // RD_MULTIPLE_DRIVE @@ -472,6 +476,11 @@ if ( iSysApFeatureManager->MmcHotSwapSupported() ) { + if(iSysApMMCObserver == NULL) + { + iSysApMMCObserver = CSysApMMCObserver::NewL( + iEikonEnv->FsSession(), *iSysApDriveList, *this, iSysApFeatureManager->MmcHotSwapSupported() ); + } iSysApMMCObserver->StartMountObserver(); } @@ -565,23 +574,7 @@ if( IsStateNormal() ) { TRACES( RDebug::Print(_L("CSysApAppUi::DoStateChangedL to normal state.") ) ); - - if ( iSysApFeatureManager->MmcSupported() ) - { -#ifndef RD_MULTIPLE_DRIVE - MountMMC(); - MMCStatusChangedL(); - iHideFirstBeep = EFalse; -#else // RD_MULTIPLE_DRIVE - iSysApDriveList->MountDrive( iSysApDriveList->DefaultMemoryCard() ); - UpdateInsertedMemoryCardsL(); -#endif // RD_MULTIPLE_DRIVE - } - if ( iSysApFeatureManager->MmcHotSwapSupported() ) - { - iSysApMMCObserver->StartMountObserver(); - } - + iSysApBtController = CreateSysApBtControllerL( *this ); iSysApBtSapController = CreateSysApBtSapControllerL( *this ); @@ -2773,10 +2766,6 @@ { //Do nothing:: To supress warning } - if (iSysApKeyManagement && aKeyEvent.iCode != EKeyPowerOff && aKeyEvent.iCode != 'E') - { - response = iSysApKeyManagement->HandleKeyEventL(aKeyEvent, aType ); - } if( aType == EEventKey ) {