diff -r 951aeeb3da43 -r eea20ed08f4b coreapplicationuis/SysAp/Inc/SysApAppUi.h --- a/coreapplicationuis/SysAp/Inc/SysApAppUi.h Fri Jun 11 13:48:03 2010 +0300 +++ b/coreapplicationuis/SysAp/Inc/SysApAppUi.h Tue Jun 29 10:40:11 2010 +0300 @@ -1,116 +1,43 @@ /* -* Copyright (c) 2005-2009 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: CSysApAppUi class definition. This class handles all user -* actions and also System Agent events. -* -*/ - + * Copyright (c) 2005-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" + * which accompanies this distribution, and is available + * at the URL "http://www.eclipse.org/legal/epl-v10.html". + * + * Initial Contributors: + * Nokia Corporation - initial contribution. + * + * Contributors: + * + * Description: + * + */ #ifndef SYSAPAPPUI_H #define SYSAPAPPUI_H - -// INCLUDES +//#include +//#include +//#include #include -#include -#ifndef RD_MULTIPLE_DRIVE - #include -#endif // RD_MULTIPLE_DRIVE -#include -#include -#include -#include - -#include #include "SysAp.hrh" -#include "SysApMMCObserver.h" -#include "MSysApPropertyResponder.h" -#include "SysApTimer.h" +#include +#include +#include #include -#include "coreapplicationuisprivatecrkeys.h" #include - +#include +#include "SysApTimer.h" +#include "SysApLightsController.h" +#include "coreapplicationuisprivatecrkeys.h" +#include "sysapusbchargerdetector.h" #include "SysApAccessoryObserver.h" -#ifdef RD_MULTIPLE_DRIVE - #include "sysapdrivelist.h" -#endif // RD_MULTIPLE_DRIVE - -#include "sysapusbchargerdetector.h" -#include "sysappsmcontroller.h" +#include +//For Powermenu--CHbDevicePowerMenuSymbian +#include "hbdevicepowermenusymbian.h" -// FORWARD DECLARATIONS -class CAknSmallIndicator; -class CAknSignalNotify; -class CAknBatteryNotify; -class CAknGlobalListQuery; -class CAknGlobalNote; -class CSystemLock; -class CSysApLightsController; -class CSysApPubSubObserver; -class CSysApProfileObserver; -class CSysApConnectionMonitorObserver; -class CSysApCenRepLightSettingsObserver; -class CSysApCenRepLogsObserver; -class CSysApCenRepBtObserver; -//class CSysApCenRepFmTxObserver; -class CSysApCenRepController; -class CSysApStartupController; -class CSysApPowerKeyMenuObserver; -class CSysApWaitNote; -class CSysApSsSettingsObserver; -class CSysApShutdownImage; -class CSysApShutdownAnimation; -class CSysApEtelConnector; -class CSysApMsgSimMemLowQuery; -class CSysApNspsHandler; -class CSysApConfirmationQuery; -class CSysApFeatureManager; -class MSysApOfflineModeController; -class MSysApBtController; -class MSysApBtSapController; -class MSysApUsbIndicator; -class MSysApLocationPrivacyIndicator; -class MProfileEngine; -class MProfilesNamesArray; -class CSysApKeySndHandler; -class CSysApKeyManagement; // KEF -class CSysApMediatorObserver; -class CAknAppUiBase; -class CSysApCenRepHacSettingObserver; -class CSysApAudioRoutingObserver; -class CSysApCenRepCallForwardingObserver; -class CSysApCenRepMsgWaitingObserver; - -// POC launching -class CAiwServiceHandler; - -class CSysApDefaultKeyHandler; -class CSysApDriveUnlockHandler; -class CSysApDriveEjectHandler; - -class CSysApBatteryInfoController; - -//CONSTANTS -const TInt KDummyReason( -1 ); -const TInt KBluetoothModulePowerModeOn ( 1 ); -const TInt KBluetoothModulePowerModeOff ( 0 ); -const TInt KGeneralProfileId ( 0 ); -const TInt KOfflineModeProfileId ( 5 ); -const TInt KApplicationScanningInterval( 1 ); // 1 second -_LIT( KFSName, "Fat" ); // MMC file system name -const TDriveNumber KMMCDrive = EDriveE; // MMC drive number - - +#include "sysappsmcontroller.h" //CLASS DECLARATION /** @@ -121,18 +48,49 @@ * @lib sysap * @since 1.0 */ +#include -class CSysApAppUi : - public CAknAppUi, -#ifndef RD_MULTIPLE_DRIVE - public MAknMemoryCardDialogObserver, -#endif // RD_MULTIPLE_DRIVE - public MSysApMemoryCardObserver, + +//class CAknAppUiBase; +//class CSysApKeySndHandler; +//class CSysApWsClient; +class CSysApFeatureManager; +class CSysApNspsHandler; +class CSysApPubSubObserver; +class CSysApStartupController; +class CSysApDefaultKeyHandler; +class CSysApKeyManagement; +class MSysApOfflineModeController; +class CHbDevicePowerMenuSymbian; +class CSysApShutdownImage; +class CSysApKeySndHandler; +class CSysApCenRepController; +class CSysApCenRepLightSettingsObserver; +class CSysApCenRepBtObserver; +class CSysApCenRepHacSettingObserver; +class CSysApAudioRoutingObserver; +class CSysApSsSettingsObserver; +class CSystemLock; +class CSysApCenRepCallForwardingObserver; +class CSysApBatteryInfoController; +class MSysApBtSapController; +class MSysApBtController; +class CSysApCenRepLogsObserver; +class MSysApUsbIndicator; +class CKeyguardAccessApi; + + +const TInt KBluetoothModulePowerModeOn ( 1 ); +const TInt KDummyReason( -1 ); + +//class HbMessageBox; + +class CSysApAppUi : public CAknAppUi, public MSysApTimerResponder, public MSysapCallback, public MSysApPsmControllerNotifyCallback -{ - public: + { + public: /** * C++ default constructor. * @param None @@ -146,7 +104,10 @@ * @return void */ virtual ~CSysApAppUi(); - + + // from CCoeAppUiBase + void PrepareToExit(); + protected: // From MSysApTimerResponder /** @@ -155,1057 +116,7 @@ * @return void */ void TimerExpiredL(); - - public: - - /** - * Gets called when shutdown continues after shutdown animation - * @param None - * @return void - */ - void ContinueShutdown(); - - /** - * Gets called when there is need to shutdown the device initiated by Symbian side - * @param None - * @return void - */ - void DoShutdownL( const TBool aReset, const TInt aResetReason ); - - /** - * Gets called by CSysApSharedDataObserver if user has selected "No" in - * "Do you want to use the phone in Off-line mode?" query in startup. - * @param aDoProfileChange if ETrue, the last active profile is restored - * @return void - */ - void GoOnlineL( TBool aDoProfileChange = ETrue ); - - /** - * Gets called by CSysApSharedDataObserver in Simless Offline Mode startup. - * @param None - * @return void - */ - void GoOfflineL(); - - /** - * Calls CSysApOfflineModeController::SwitchFromOnlineToOfflineModeL() - * @param None - * @return void - */ - void SwitchFromOnlineToOfflineModeL(); - - /** - * Called when offline mode change has been finished. - */ - void OfflineModeChangedL(); - - /** - * Gets called after changing the SW state. - * @param aSwState The new state - * @return void - */ - void DoStateChangedL( const RStarterSession::TGlobalState aSwState ); - -#ifdef SYSAP_USE_STARTUP_UI_PHASE - /** - * Called when UI is ready after boot. - */ - void HandleUiReadyAfterBootL(); - -#endif // SYSAP_USE_STARTUP_UI_PHASE - /** - * Returns whether UI is ready after boot. - */ - TBool UiReady() const; - - /** - * Gets called when any case selection on powerkey menu is done. - * Does what is needed per selection. - * @param TInt aSelection - * @return void - */ - void PowerKeyPopUpMenuSelectionDoneL( TInt aSelection ); - - /** - * Gets called when Alarm is being shown to user and lights need to be blinked. - * @param TBool aAlerting - * @return void - */ - void AlertUiAlertingL( const TBool aAlerting ); - - /** - * Gets called when Alarm is being shown to user and keylock need to be turned off. - * @param TBool aKeyLockOff - * @return void - */ - void AlertUiKeyLockOff( const TBool aKeyLockOff ); - - /** - * Notifies changes in KPSUidCoreApplicationUIs::KLightControl to light controller. - */ - void HandleLightsRequireL() const; - - /** - * Notifies changes in KPSUidCoreApplicationUIs::KCoreAppUIsLightsRawKeyEvent to light controller. - * - * @since S60 3.2 - */ - void HandleRawKeyEventLightsRequireL() const; - - /** - * Gets called when Video Telephony requests to force/cancel lights on/ - * @param const TInt aLightsParameter - * @return void - */ - void HandleForcedLightsVTRequireL( const TInt aLightsParameter ) const; - - /** - * Gets called when Screen Saver requests to force lights on/off - * @param const TInt aLightsParameter - * @return void - */ - void HandleForcedLightsSSRequireL( const TInt aLightsParameter ) const; - - /** - * Gets called when AT Command requests to force lights on/off - * @param const TInt aLightsParameter - * @return void - */ - void HandleForcedLightsATCRequireL( const TInt aLightsParameter ) const; - /** - * Calls SysApLightsController::SwitchLightsOnSoftRejectL - * - * @since S60 3.1 - * @param None. - * @return None. - */ - void SwitchLightsOnSoftRejectL(); - - /** - * Asks state of one property from PubSub - * @param const TUid& - * @param const TUint - * @return const TInt ( value of property or error code ) - */ - TInt StateOfProperty( const TUid& aCategory, const TUint aKey ) const; - - /** - * Sets the indicator's aIndicator state to state aState. - * @param TInt aIndicator - * @param TInt aState - * @return void - */ - void SetIndicatorStateL( const TInt aIndicator, const TInt aState ) const; - - /** - * Returns the state of keylock - * @param none - * @return TBool the state of keylock - */ - TBool KeyLockState() const; - - /** - * Returns the state of devicelock - * @param none - * @return TBool the state of devicelock - */ - TBool DeviceLockState() const; - - /* - * @param None - * @return void - */ - void SetIhfIndicatorL(); - - /* - * Handles actions needed when either SIM memory gets too full to receive any more SMS's. - * @param aSimStoreFull If true, SIM memory is full. - * @return void - */ - void HandleSmsStorageNotificationL( TBool aSimStoreFull ); - - void HandleNspsRawKeyEventL(); - - void HandleNetworkNspsNotification( RMmCustomAPI::TNspsStatus aNspsStatus ); - - void HandleMessageTonePlayingQuitability( TInt aTonePlayingStatus ); - - /* - * Called by SysApLightsController when the lights are switced on/off - * @param aActivate If ETrue forwarding is activated, otherwise deactivated - * @return void - */ - void ActivateKeyeventForwardingForLights(TBool aActivate); - - /** - * Gets called when shutdown requested when sw state == ESWStateAlarm - * context active. - * @param None - * @return void - */ - void StartShutDownTimerOnAlarmAndChargingStates(); - static TInt DoShutdownOnAlarmStateAfterCallBack( TAny* aObject ); - -#ifndef RD_STARTUP_ANIMATION_CUSTOMIZATION - /** - * Starts shutdown animation timing after shutdown tone sync is done - */ - void StartAnimTiming(); -#endif // RD_STARTUP_ANIMATION_CUSTOMIZATION - - /** - * Stops shutdown animation timing and continues shutdown. - */ - static TInt DoStopAnimTiming( TAny* aObject ); - - /** - * Gets called when GPRS is suspended because of a phone call established while - * context active. Delay (KDelayBeforeShowingGprsSuspendedNote) required to ensure - * that the phone call was really established. - * @param None - * @return void - */ - void StartGprsSuspendedTimer(); - static TInt ShowGprsSuspendedNoteAfterCallBack( TAny* aObject ); - - /** - * Gets called when an accessory was connected to device. The indicator - * is shown and profile gets changed if needed. - * @param aAccessoryState Indicates the new accessory state - * @return void - */ - void HandleAccessoryConnectedL( TAccMode aAccessoryState ); - - /** - * Gets called when headset/loopset was disconnected from device. The indicator - * is hidden and the original profile gets restored if needed. - * @param None - * @return void - */ - void HandleAccessoryDisconnectedL(); - - /** - * Gets called when SysAp receives KSysApSatRefreshStart. All - * non-system UI applications are closed - * and an information note is shown to the user. - * @param None - * @return void - */ - void HandleSatRefreshL(); - -#ifndef RD_MULTIPLE_DRIVE - /** - * Mounts MMC drive - * @param None - * @return TInt : error value from RFs::MountFileSystem() - */ - TInt MountMMC(); - - /** - * Dismounts MMC drive - * @param None - * @return TInt : error value from RFs::MountFileSystem() - */ - TInt DismountMMC(); -#endif // RD_MULTIPLE_DRIVE - - /** - * MMC Hot Swap Ejection from powerkey menu - * @param None - * @return void - */ - void EjectMMCL(); - - /** - * Disconnect BtSap from powerkey meny - * @param None - * @return void - */ - void DisconnectBtSap(); - - /** - * Enable or disable FM transmission - */ -// void ChangeFmTxStateL( TBool aEnable ); - -#ifndef RD_MULTIPLE_DRIVE - public: // from MAknMemoryCardDialogObserver - - /** - * To be notified when unlock completed - * @param TInt aResult - * @return void - */ - void UnlockComplete( TInt aResult ); -#endif // RD_MULTIPLE_DRIVE - - public: - - /** - * Plays the sound EAvkonSIDInformationTone - * @param None - * @return void - */ - void Beep(); - -#ifndef RD_MULTIPLE_DRIVE - /** - * Unlocks MMC - * @param None - * @return void - */ - void RunUnlockNotifierL( TSysApMemoryCardStatus aMemoryCardStatus = ESysApMemoryCardStatusNotKnown ); - - /** - * From MSysApMemoryCardObserver. - * Gets called by CSysApMMCObserver when an MMC is inserted/removed - * @return void - */ - void MMCStatusChangedL(); - - /** - * Shows "MMC removed..." dialogs - * @param None - * @return void - */ - void ShowMMCDismountedDialogL(); -#else // RD_MULTIPLE_DRIVE - - /** - * Updates PS key during boot - * @return void - */ - void MMCInsertedL(); - - /** - * Unlocks MMC - * @param None - * @return void - */ - void RunUnlockNotifierL(); - - /** - * From MSysApMemoryCardObserver. - * Gets called by CSysApMMCObserver when an MMC is inserted/removed - * @param aDrive Changed drive - * @return void - */ - void MMCStatusChangedL( TInt aDrive ); - - /** - * Shows "MMC removed..." dialogs - * @param aDrive Drive to dismount - * @param aEjectType Eject type used for the drive - * @return void - */ - TBool ShowMMCDismountedDialogL( - TInt aDrive, CSysApDriveList::TDriveEjectType aEjectType ); -#endif // RD_MULTIPLE_DRIVE - - /** - * Called after confirming dialog "MMC removed..." - * @param None - * @return void - */ - void MMCDismountedDialogConfirmed(); - - /** - * Gets called by CSysApSharedDataObserver when "Eject" is started - * or finished in File Manager application. - * @param None - * @return void - */ - void EjectStarted( TBool ejectStarted ); - - private: - /** - * EPOC default constructor. - * @param None - * @return void - */ - void ConstructL(); - - private: - -#ifndef RD_MULTIPLE_DRIVE - - /** - * Resolves process UID based on its thread id - * - * @since S60 3.1 - * @param aThreadId id of the thread - * @return TInt32 process UID - */ - TInt32 ResolveUidFromThread( TUint aThreadId ) const; - - /** - * Called recursively when shutting down apps in Hot Swap - * @param None - * @return void - */ - void CloseUIAppsInHotSwapL(); - - /** - * Called by CloseUIApplicationsHotSwapL when completing - * shutting apps - * @param None - * @return void - */ - void CompleteAppsShuttingInHotSwapL(); -#endif // RD_MULTIPLE_DRIVE - - public: - - /** - * Initializes parameters used in shutting down apps in BT SAP - * @param None - * @return void - */ - void InitCloseSimApplicationsL(); - - private: - - /** - * Called recursively when shutting down apps in BT SAP - * @param None - * @return void - */ - void CloseSimApplicationsL(); - - /** - * Called to re-envoke CloseSimApplicationsL() - * @param None - * @return void - */ - static TInt DoCloseSimApplicationsAfterCallBack( TAny* aObject ); - - private: - /** - * Takes care of command handling. - * @param aCommand command to be handled - * @return void - */ - void HandleCommandL( TInt aCommand); - - /** - * handles key events - * @param TKeyEvent& aKeyEvent - * @param TEventCode aType - * @return TKeyResponse - */ - TKeyResponse HandleKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType ); - - private: - // By default, prohibit copy constructor - CSysApAppUi( const CSysApAppUi& ); - - // Prohibit assigment operator - CSysApAppUi& operator= ( const CSysApAppUi& ); - - private: - void HandleApplicationSpecificEventL(TInt aType,const TWsEvent& aEvent); - /** - * Gets called by ConstructL function to set initial states to indicators etc - * Needed state information is got from Shared Data and status pane's components - * are set to the correct states. - * @param None - * @return void - */ - void InitializeStatusPaneAreaL(); - - /** - * Gets called by HandleKeyEventL after detecting a long press of powerkey. - * According to current state of the device desides if it is time to either - * shutdown or make startup (from charging state ) to normal state - * @param None - * @return void - */ - void HandleLongPowerKeyPressedL(); - - /** - * Gets called by HandleKeyEventL after a short press of powerkey. - * According to current state of the device desides if it is time to - * either switch lights on and show mode selection dialog(normal state) - * or to shutdown the phone (in alarm state). - * @param None - * @return void - */ - void HandleShortPowerKeyPressedL(); - - /** - * Frees SysAp's reserved memory, closes connections to servers etc. - * @param None - * @return void - */ - void FreeResources(); - - public: - - /** - * Displays a UI query. - * @param TSysApConfirmationQueryIds - * @param aValue query related value - * @return void - */ - void ShowQueryL( const TSysApConfirmationQueryIds aQueryId, - const TDesC& aValue = KNullDesC ); - - /** - * Displays a UI note. - * @param TSysApNoteIds aSysApNoteIds - * @return void - */ - void ShowUiNoteL( const TSysApNoteIds aNote ) const; - - /** - * Displays a "Charger connected" note. - * @param None - * @return void - */ - void ShowChargingNoteL(); - - /** - * Handles charger related notes - * @param TInt : KPSUidChargerCStatusValue - * @return void - */ - void HandleChargerNotesL( const TInt aValue ); - - /** - * Displays a "Selected profile" note. - * @param None - * @return void - */ - void ShowProfileNoteL(); - - /** - * Cancels a UI wait note. - * @param None - * @return void - */ - void CancelWaitNote(); - - /** - * Cancels the global list query - * @param None - * @return void - */ - void CancelGlobalListQuery(); - - /** - * Updates signal bars to the value cached by Etel connector. - * @return void - */ - void UpdateSignalBarsL(); - - /** - * Updates signal bars to specified state. - * @param TInt aState Number of bars or KAknSignalOffLineMode - * @return void - */ - void UpdateSignalBarsL( const TInt aState ); - - /** - * Gets called by HandleSystemAgentEventL to singal availability indicator - * ie. Gprs state icon or common signal icon. - * @param None - * @return void - */ - void SetSignalIndicatorL(); - - /** - * Gets called by SetSignalIndicatorL() when in GSM network - * @param None - * @return void - */ - void SetSignalIndicatorGsmL(); - - /** - * Gets called by SetSignalIndicatorL() when in Wcdma network - * @param None - * @return void - */ - void SetSignalIndicatorWcdmaL(); - - /** - * Handles GPRS suspend/resume notes if feature supported. - * ie. Gprs state icon or common signal icon. - * @param None - * @return void - */ - void HandleGprsNotesL(); - - /** - * Returns the current bluetooth power mode setting using CSysApSharedDataObserver - * @param None - * @return TInt - */ - TInt BluetoothPowerMode() const; - - /** - * Activates the profile given as a parameter - * @param TInt aProfileId - * @return void - */ - void ActivateProfileL( const TInt aProfileId ) const; - - /** - * Activates the profile saved in iProfileToBeActivated. - * @param None - * @return void - */ - void ActivateOnlineProfileL() const; - - /** - * Checks whether Offline Mode is activated - * @param TBool - * @return void - */ - TBool OfflineModeActive(); - - /** - * Tolds Offline Mode controller not to activate BT - * when next going online. - * @param None - * @return void - */ - void DoNotActivateBt(); - - /** - * Switches BT module on/off using BT Engine - * @param TBool: ETrue = on, EFalse = off - * @return void - */ - TInt SetBtPowerState( TBool aBtState ); - - /** - * Sets iKeyLockOnBeforeCall = EFalse. - * @param None - * @return void - */ - void DoNotEnableKeylock(); - -#ifdef RD_MULTIPLE_DRIVE - /* - * Starts wait note for eject - */ - void ShowEjectWaitNoteL( TInt aDriveToEject ); - - /* - * Checks is eject query visible - */ - TBool IsEjectQueryVisible(); -#endif // RD_MULTIPLE_DRIVE - - /** - * Gets called by CSysApSharedDataObserver when "Eject" is selected - * in File Manager application. - * @param aDrive Drive to eject - * @return void - */ - void EjectUsed( TInt aDrive ); - - /** - * MMC Hot Swap Ejection from powerkey menu was canceled - * @param None - * @return void - */ - void EjectMMCCanceled(); - - private: - - /** - * Gets currently active profile's name. - * @param TPtr aProfileName - * @return void - */ - void ActiveProfileNameL( TPtr aProfileName ); - - public: - - /** - * Gets called by HandleSystemAgentEventL to update battery bars. - * @param TInt aState - * @return void - */ - void UpdateBatteryBarsL( const TInt aState ); - - /** - * Gets called by HandleSystemAgentEventL when profile was changed. - * Profile selected Global Note is shown. - * @param TInt aValue - * @return void - */ - void HandleProfileChangedL( const TInt aValue ); - - /** - * Checks if the active profile is silent and updates CSysApLightsController - * if needed. - * @param None - * @return void - */ - void CheckSilentModeL(); - - /** - * Gets called by CSysApOfflineModeController when activation/deactivation - * of Offline Mode fails - * @param TBool aOffline - * @return void - */ - void RestoreProfileL( const TBool aOffline ); - - /** - * Returns the id of the active profile. - * @param None - * @return Int - */ - TInt ActiveProfileId(); - - /** - * Gets called when the value of the SD key KGSDisplayLightsTimeout - * changes - * @param TInt : lights timeout in seconds - * @return void - */ - void DoLightsTimeoutChangedL( const TInt aTimeout ); - - private: - - /** - * Checks whether it is necessary to change profiles in case an accessory - * was connected/disconnected while the device was powered down. - * - * @param TInt aValue - * @return void - */ - void HandleAccessoryProfileInStartupL( ); - - public: - /** - * Gets called by HandleSystemAgentEventL to Disable keylock when devicelock is activated. - * This is done already when device lock is activated because this - * @param None - * @return void - */ - void SetDeviceLockEnabledL( const TBool aLockEnabled ); - - private: - - /** - * Gets called by HandleShortPowerKeyPressedL to display the power key popup menu - * @param None - * @return void - */ - void ShowPowerKeyPopUpMenuL(); - - /** - * Does what is needed to do inside SysAp before actually doing - * other shutdown related things. This is used when shutdown image is enabled. - * @param None - * @return void - */ - void PrepareForShutdownImage(); - - /** - * Does what is needed to do inside SysAp before actually doing - * other shutdown related things. This is used when shutdown animation is enabled. - * @param None - * @return void - */ - void PrepareForShutdownAnimation(); - - /** - * Show shutdown animation - * - * @param - * @return ETrue if animation is enabled - */ - #ifdef RD_STARTUP_ANIMATION_CUSTOMIZATION - void - #else // RD_STARTUP_ANIMATION_CUSTOMIZATION - TBool - #endif // RD_STARTUP_ANIMATION_CUSTOMIZATION - ShowAnimationL(); - - /** - * Makes Status pane visible/invisible when needed and changes it's layout between Charging/Alarm - * @param None - * @return void - */ - void SetStatusPaneLayoutL( const TSysApPhoneState aState ); - - /** - * Checks from current Symbian swstate if it is ok to initiate shutdown - * @param None - * @return const TBool - */ - TBool OkToInitiateShutdown(); - - /** - * Shows shutdown animation or shutdown image - * @param None - * @return void - */ - void PrepareForCompleteShutdown(); - - /** - * Makes the end part of shutdown sequence. - * @param None - * @return void - */ - void CompleteShutdown( const TBool aReset = EFalse, const TInt aResetReason = KDummyReason ); - - /** - * Sets calls forwarding indicators on/off accrding to aCallsForwardingState - * @param TInt aCallsForwardingState - * @return void - */ - void DoSwStateNormalConstructionL(); - - public: - - /** - * Starts an application or brings an already running application - * to foreground. - * @param TUid: UID of the application that is activated - * @return void - */ - void ActivateApplicationL( const TUid aUid ); - - void HandleCurrentCallStateChangeL( TInt aCurrentCallState ); - - void DoSimChangedFromPreviousBootL(); - - /** - * Gets called in SysAp construction or when SysAp gets a SA/P&S notification - * @param const TInt: indicator status - * @return void - */ - void HandleLocationPrivacyIndicatorL( const TInt aState ); - - /** - * Return value of the__SIMCARD feature - * @param None - * @return TBool - */ - TBool SimSupported(); - - /** - * Notify CSysApLightController of the empty battery. - * @param None - * @return void - */ - void BatteryEmptyL(); - - /** - * Prompt starter to change mode - * @param aState The new state - * @return KErrArgument if the state change is illegal (from current state - * it is not possible to change to the requested state), KErrNone if the - * global state change has been successfully initiated. - */ - TInt SetStarterState( const RStarterSession::TGlobalState aState ); - - /** - * Creates the device name string for BT Sap disconnect prompt. - * @return device name string. - */ - HBufC* GetBtSapDeviceNameL(); - - /** - * Handle alarm indicator - * @param aShowIndicator If ETrue, indicator is show, otherwise it is hidden. - */ - void ShowAlarmIndicatorL( TBool aShowIndicator ); - - /** - * Informs lights controller that flip has been opened/close - * @param aFlipOpen ETrue if flip is open, EFalse otherwise - */ - void SetFlipOpenL( TBool aFlipOpen ); - - /** - * Creates a virtual flip key event that is passed to the key management - * of SysAp. - * - * @since S60 3.2 - * @param aFlipOpen ETrue if flip is open, EFalse otherwise - * @return None - */ - void SimulateFlipKeyEventL( TBool aFlipOpen ); - - /** - * Informs lights controller that grip has been opened/close - * @param aGripOpen ETrue if grip is open, EFalse otherwise - */ - void SetGripOpenL( TBool aGripOpen ); - - /** - * Sets the status of the Central Repository key - * KCRUidCoreApplicationUIs / KCoreAppUIsNetworkConnectionAllowed - * @param TInt - * @return void - */ - void SetNetworkConnectionAllowed( TCoreAppUIsNetworkConnectionAllowed aNetworkConnectionAllowed ); - - /** - * Get pointer to RTelServer - * - * @return pointer to RTelServer if iSysApEtelConnector is initialized. Otherwise return NULL. - */ - RTelServer* GetTelServer(); - - /** - * Show WLan indicator - * - * @param aValue The value of KPSWlanIndicator PS key. - */ - void HandleWlanIndicatorL( TInt aValue ); - - /** - * Show TARM indicator - * - * @param aValue The value of KCoreAppUIsTarmIndicator PS key - */ - void HandleTarmIndicatorL( TInt aValue ); - -#ifndef RD_STARTUP_ANIMATION_CUSTOMIZATION - /** - * Continue shutdown animation showing after sync request - */ - void ShutdownAnimationSyncOK(); -#endif RD_STARTUP_ANIMATION_CUSTOMIZATION - - /** - * Skip shutdown animation (i.e. stop showing it). Initiated by CoverUI. - */ - void SkipShutdownAnimation(); - - /** - * Notifies CoverUI about skipping shutdown animation. - */ - void NotifyShutdownAnimationSkip(); - - /** - * Check cover display support - * - * @return ETrue if cover display is supported, EFalse otherwise - */ - TBool CoverDisplaySupported(); - - /** - * Returns reference to RStarterSession - * RStarterSession is connected when this method is called - * for the first time. - * - * Always (except when freeing resources) access the starter session via this method, - * don't use the member variable directly. - * - * @return reference to RStarterSession - */ - RStarterSession& StarterSession(); - - /** - * Returns reference to SysAp's CenRep controller - * - * @since S60 3.1 - * @param None - * @return reference to CSysApCenRepController - */ - CSysApCenRepController& CenRepController(); - - /** - * Ignore zero network bars signal notifies. - * This is needed in BT SAP mode. - * - * @param aIgnore If ETrue, ignore any future zero network bars notifications. - */ - void IgnoreZeroNetworkBarNotifications(TBool aIgnore); - - /** - * Check if BT SAP is enabled - * - * @return ETrue if BT SAP is enabled, EFalse otherwise - */ - TBool BtSapEnabled(); - - /** - * Deactivate BT when changing to normal mode. - * Can only be used during startup, has no effect after that. - */ - void DeactivateBT(); - - private: - /** - * Returns reference to SysAp's keylock session - * RAknKeylock2 session is connected when this method is called - * for the first time. - * - * Always (except when freeing resources) access the keylock session via this method, - * don't use the member variable directly. - * - * @since S60 3.1 - * @param None - * @return reference to RAknKeylock2 - */ - RAknKeylock2& KeyLock(); - - - -#ifdef __SYSAP_MODULE_TEST - - /** - * Can be used for showing a CAknGlobalNote in module tests - * @param noteText : text to be shown in the note - * @return void - */ - void ModuleTestShowUiNoteL( const TDesC& noteText ) const; -#endif - - /** - * shows power down note before displaying shutdown image - * @param: none - * @return void - */ - void ShowShutdownNoteL(); - - /** Return ETrue if the global system state is one of the 'normal' - * states: ESwStateNormalRfOn, ESwStateNormalRfOff or - * ESwStateNormalBTSap. - */ - TBool IsStateNormal() const; - - /** - * Returns max of three integers - * @param: TInt - * @return void - */ - TInt Max( const TInt aA, const TInt aB, const TInt aC ); - - /** - * Displays shutdown image. - * This method is just a nonleaving implementation, - * calls ShowShutdownImageL for performing the task. - * - * @since S60 3.1 - * @param aBitmapId bitmap identifier - * @return TInt an error value - * @see CSysApAppUi::ShowShutdownImageL - */ - TInt ShowShutdownImage( TInt aBitmapId ); - - /** - * Displays shutdown image. If a CSysApShutdownImage instance - * does not exist, it will be created. - * - * @since S60 3.1 - * @param aBitmapId bitmap identifier - * @return None - * @leave Symbian error code - */ - void ShowShutdownImageL( TInt aBitmapId ); - private: // from MSysapCallback /** * Executes a command in SysAp. @@ -1258,19 +169,60 @@ * @see MSysapCallback::TSysapQuery */ void ExecQueryL( TSysapQuery aQuery, TDes8& aReturn, const TDesC8& aParam ); - - public: + +// private: + /** + * EPOC default constructor. + * @param None + * @return void + */ + public: + void ConstructL(); + + private: // from CEikAppUi + /** + * Handles a change to the application's resources which are shared across the environment. + * + * @since S60 3.1 + * @param aType The type of resources that have changed. + * @return None. + */ +// void HandleResourceChangeL(TInt aType); + + private: /** - * Sets HAC (Hearing Aid Compatibility) indicator according to its CenRep-setting - * state. - * HAC indicator is not displayed if an accessory is connected. - * - * @param None - * @return None + * Takes care of command handling. + * @param aCommand command to be handled + * @return void + */ + void HandleCommandL( TInt aCommand); + + /** + * handles key events + * @param TKeyEvent& aKeyEvent + * @param TEventCode aType + * @return TKeyResponse */ - void SetHacIndicatorL(); + TKeyResponse HandleKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType ); + + public: + // void CallFromMain(); + + /** + * Returns the state of keylock + * @param none + * @return TBool the state of keylock + */ + TBool KeyLockState() const; /** + * Returns the state of devicelock + * @param none + * @return TBool the state of devicelock + */ + TBool DeviceLockState() const; + + /** * Returns reference to SysAp's internal feature manager. * * @since S60 3.1 @@ -1278,387 +230,198 @@ */ CSysApFeatureManager& SysApFeatureManager(); - /** - * Handles response to power save activation query. - * - * @param aEnable If ETrue, the user has accepted the query. - */ - void HandleActivatePsmQueryResponse( TBool aEnable ); - - /** - * Handles response to power save deactivation query. - * - * @param aDisable If ETrue, the user has accepted the query. - */ - void HandleDeactivatePsmQueryResponse( TBool aDisable ); - - private: // from CAknAppUi - /** - * Handles a change to the application's resources which are shared across the environment. - * - * @since S60 3.1 - * @param aType The type of resources that have changed. - * @return None. - */ - void HandleResourceChangeL(TInt aType); - - private: - /** - * Shows and hides the memory card indicator depending on whether the memory card is inserted or not. - * - * @since S60 3.1 - * @param None. - * @return None. - */ - void SetMemoryCardIndicatorL(); - - /** - * Returns whether IHF has been enabled. - * Creates audio routing observer if it does not exist.. - * - * @since S60 3.2 - * @return TBool ETrue if IHF is enabled + /* + * Called by SysApLightsController when the lights are switced on/off + * @param aActivate If ETrue forwarding is activated, otherwise deactivated + * @return void */ - TBool IhfEnabledL(); - -#ifdef RD_MULTIPLE_DRIVE - void UpdateInsertedMemoryCardsL(); -#endif // RD_MULTIPLE_DRIVE - - /** - * Handles setup of USB charger from given charging status. - * - * @since S60 3.2 - * @param aValue Given charging status - */ - void HandleUsbCharger( const TInt aValue ); - - public: - /** - * Sets USB connection attach status. - * This prevents double beep when USB file transfer gets activated. - * - * @since S60 3.2 - * @param aUsbConnected ETrue if USB cable has just been attached, otherwise EFalse - */ + void ActivateKeyeventForwardingForLights(TBool aActivate); + + TBool IsEncryptionOperationOngoingL() const; +// void ConnectToFileServerL(); +// void ConnectToWindowServerL(); + void ShowExampleUiNoteL ( const TDesC& noteText )const; + void ShowNotificationDialog(const TDesC& noteText)const; + void PopupNote(); +// void CreateWindowGroup(); + TBool ResourcesFreed() const; + void ShowUiNoteL( const TSysApNoteIds aNote ) const; + TInt StateOfProperty( const TUid& aCategory, const TUint aKey ) const; + TBool OfflineModeActive(); + void GoOnlineL( TBool aDoProfileChange = ETrue ); + void GoOfflineL(); + void SwitchFromOnlineToOfflineModeL(); + + void DoStateChangedL( const RStarterSession::TGlobalState aSwState ); + TInt SetStarterState( const RStarterSession::TGlobalState aState ); + TInt BluetoothPowerMode() const; + void SetNetworkConnectionAllowed( TCoreAppUIsNetworkConnectionAllowed aNetworkConnectionAllowed ); + RStarterSession& StarterSession(); + TInt SetBtPowerState( TBool aBtState ); + TBool SimSupported(); + TBool BtSapEnabled(); + void OfflineModeChangedL(); + TBool UiReady() const; + void DoShutdownL( const TBool aReset, const TInt aResetReason ); + TBool IsDeviceModeKey( const TKeyEvent& aKeyEvent ) const; void SetUsbAttachStatus( const TBool aUsbAttached ); - - /** - * Returns whether the key event is considered to be a device mode key event, - * which usually causes a transition in the device mode (e.g. grip, flip or twist). - * - * @since S60 3.2 - * @param aKeyEvent key event - * @return TBool ETrue key event is considered to be a device mode key - * EFalse not a device moed key - */ - TBool IsDeviceModeKey( const TKeyEvent& aKeyEvent ) const; - - /** - * Returns whether resources (objects, server connections) owned by this - * class has been freed. - * - * @since S60 3.2 - * @return TBool ETrue if resource deallocation has been performed. - */ - TBool ResourcesFreed() const; - - /** - * Returns pointer to CSysApEtelConnector. - * - * @since S60 3.2 - * @return pointer to CSysApEtelConnector instance owned by this class. - * NULL if the object creation has failed. - */ - CSysApEtelConnector* EtelConnector() const; - - /** - * Returns reference to USB charger detector, TSysApUsbChargerDetector. - * - * @since S60 3.2 - * @return Reference to USB charger detector. - */ TSysApUsbChargerDetector& UsbChargerDetector(); - - /** - * Sets envelope indicator according to current messaging status. - * - * @since S60 3.2 - */ - void SetEnvelopeIndicatorL(); - - /** - * Handles value changes of the key KHWRMBatteryStatus. - * - * @since S60 3.2 - * @param aValue the updated key value - */ - void HandleBatteryStatusL( const TInt aValue ); - /** - * Handles value changes of the key KHWRMChargingStatus. - * - * @since S60 3.2 - * @param aValue the updated key value - */ - void HandleChargingStatusL( const TInt aValue ); - - /** - * Cancel the specified query if it is active. - * - * @param aQueryId ID of the query that must be cancelled. - * If ESysApNoQuery is given, the active query is cancelled. - * without checking its ID. - */ - void CancelQuery( TSysApConfirmationQueryIds aQueryId ); - - private: - // from MSysApPsmControllerNotifyCallback - void NotifyPowerSaveModeL( TSysApPsmStatus aStatus ); - - private: - /** - * Get the logs observer. Created if does not exist. - * - * @since S60 3.2 - * @return reference to CSysApCenRepLogsObserver object - */ - CSysApCenRepLogsObserver& CSysApAppUi::LogsObserverL(); - - private: //Data members + void HandleAccessoryConnectedL( TAccMode aAccessoryState ); - /***************************************************** - * Series 60 Customer / DOS - * Series 60 Domestic OS API - *****************************************************/ - - CSysApLightsController* iSysApLightsController; - - CSysApPubSubObserver* iSysApPubSubObserver; - CSysApProfileObserver* iSysApProfileObserver; + void HandleAccessoryDisconnectedL(); + void DoLightsTimeoutChangedL( const TInt aTimeout ); + void SetHacIndicatorL(); + void DoNotActivateBt(); + void SetIhfIndicatorL(); + void HandleLongPowerKeyPressedL(); + void IgnoreZeroNetworkBarNotifications(TBool aIgnore); + void InitCloseSimApplicationsL(); + void CloseSimApplicationsL(); + void DoSimChangedFromPreviousBootL(); + void ShowAlarmIndicatorL( TBool aShowIndicator ); + void AlertUiAlertingL( const TBool aAlerting ); + void HandleForcedLightsVTRequireL( const TInt aLightsParameter ) const; + void HandleForcedLightsSSRequireL( const TInt aLightsParameter ) const; + void HandleForcedLightsATCRequireL( const TInt aLightsParameter ) const; + void HandleLightsRequireL() const; + void AlertUiKeyLockOff( const TBool aKeyLockOff ); + void DoNotEnableKeylock(); + void SwitchLightsOnSoftRejectL(); + void SetDeviceLockEnabledL( const TBool aLockEnabled ); + void HandleBatteryStatusL( const TInt aValue ); + void BatteryEmptyL(); + void ShowQueryL( const TSysApConfirmationQueryIds aQueryId, + const TDesC& aValue = KNullDesC ); + void HandleChargingStatusL( const TInt aValue ); + void HandleChargerNotesL( const TInt aValue ); + void UpdateBatteryBarsL( const TInt aState ); + void ShowChargingNoteL(); + void HandleCurrentCallStateChangeL( TInt aCurrentCallState ); + TBool IsEmergencyCall(); + CSysApCenRepController& CenRepController(); + void HandleWlanIndicatorL( TInt aValue ); - CSysApCenRepLightSettingsObserver* iSysApCenRepLightSettingsObserver; - CSysApCenRepLogsObserver* iSysApCenRepLogsObserver; - CSysApCenRepBtObserver* iSysApCenRepBtObserver; - CSysApCenRepHacSettingObserver* iSysApCenRepHacSettingObserver; -// CSysApCenRepFmTxObserver* iSysApCenRepFmTxObserver; - CSysApCenRepController* iSysApCenRepController; - CSysApStartupController* iSysApStartupController; - CSysApConnectionMonitorObserver* iSysApConnectionMonitorObserver; - CSysApPowerKeyMenuObserver* iSysApPowerKeyMenuObserver; - CSysApSsSettingsObserver* iSysApSsSettingsObserver; - CSysApShutdownImage* iSysApShutdownImage; - CSysApShutdownAnimation* iSysApShutdownAnimation; - CSysApEtelConnector* iSysApEtelConnector; - CSysApAccessoryObserver* iSysApAccessoryObserver; - CSysApMsgSimMemLowQuery* iSysApMsgSimMemLowQuery; - CSysApWaitNote* iSysApWaitNote; - CSysApConfirmationQuery* iSysApConfirmationQuery; - CSysApConfirmationQuery* iSysApConfirmationQueryForRestart; - CSysApFeatureManager* iSysApFeatureManager; - MSysApOfflineModeController* iSysApOfflineModeController; - CSysApMMCObserver* iSysApMMCObserver; - CSysApNspsHandler* iSysApNspsHandler; - MSysApUsbIndicator* iSysApUsbIndicatorController; - MSysApBtController* iSysApBtController; - MSysApBtSapController* iSysApBtSapController; - MSysApLocationPrivacyIndicator* iSysApLocationPrivacyIndicator; - CAknBatteryNotify* iBatteryNotify; - CAknSignalNotify* iSignalNotify; - CAknGlobalListQuery* iGlobalListQuery; + void SetKeyLockEnabledL(); + void SetKeyLockDisabledL(); + void SetLightsOnUnlockNoteL(); + void SetLightsOnEcsQueryL(); + void SetLightsOnSecurityQueryL(); + TBool CheckLongPowerKeyPressed(); + TBool ReleasePowerMenuCustomDialogMemory(); + +#ifdef SYSAP_USE_STARTUP_UI_PHASE + /** + * Called when UI is ready after boot. + */ + void HandleUiReadyAfterBootL(); - CSystemLock* iSysApSystemLock; - MProfileEngine* iProfileEngine; - MProfilesNamesArray* iProfileNamesArray; - RStarterSession iStarterSession; - RAknKeylock2 iKeyLock; -#ifndef RD_MULTIPLE_DRIVE - CAknMemoryCardDialog* iMemoryCardDialog; -#endif // RD_MULTIPLE_DRIVE - TInt iCapturedEKeyPowerOff; - TInt iCapturedEKeyPowerOffUpAndDowns; - TInt iCapturedAppskey; - TInt iCapturedAppskeyUpAndDowns; +#endif // SYSAP_USE_STARTUP_UI_PHASE + + + private: + /** + * Frees SysAp's reserved memory, closes connections to servers etc. + * @param None + * @return void + */ + void FreeResources(); + TBool OkToInitiateShutdown(); - TInt iNumberOfProfileNamesInPowerKeyMenu; - - TBool iPowerkeyMenuLockKeypadShown; - TBool iPowerkeyMenuExitSapShown; - TBool iPowerkeyMenuLockSystemShown; - TBool iPowerkeyMenuEjectShown; - - TInt iPowerkeyMenuLockKeypadSelection; - TInt iPowerkeyMenuExitSapSelection; - TInt iPowerkeyMenuLockSystemSelection; -#ifndef RD_MULTIPLE_DRIVE - TInt iPowerkeyMenuEjectSelection; -#endif // RD_MULTIPLE_DRIVE + void CompleteShutdown( const TBool aReset = EFalse, const TInt aResetReason = KDummyReason ); + void PrepareForShutdownImage(); + TInt ShowShutdownImage( TInt aBitmapId ); + void ShowShutdownImageL( TInt aBitmapId ); + TBool IhfEnabledL(); + void DoSwStateNormalConstructionL(); + static TInt DoCloseSimApplicationsAfterCallBack( TAny* aObject ); + + // from MSysApPsmControllerNotifyCallback + void NotifyPowerSaveModeL( TSysApPsmStatus aStatus ); + + void HandleUsbCharger( const TInt aValue ); + TBool IsStateNormal() const; + void HandleAccessoryProfileInStartupL( ); + + CSysApCenRepLogsObserver& CSysApAppUi::LogsObserverL(); - TInt iProfileToBeActivated; - TInt iActiveProfileBeforeOfflineMode; - - TInt iApplicationScanningRoundNumberInBtSap; - TBool iTimeToKillInBtSap; + + private: +// CSysApWsClient* iSysApWsClient; + CSysApLightsController* iSysApLightsController; + CSysApFeatureManager* iSysApFeatureManager; + CSysApNspsHandler* iSysApNspsHandler; + CSysApPubSubObserver* iSysApPubSubObserver; + + CSysApDefaultKeyHandler* iSysApDefaultKeyHandler; +// RWindowGroup groupWin; + CSysApStartupController* iSysApStartupController; + MSysApOfflineModeController* iSysApOfflineModeController; + RStarterSession iStarterSession; + TSysApUsbChargerDetector iSysApUsbChargerDetector; + CSysApAccessoryObserver* iSysApAccessoryObserver; + CSysApShutdownImage* iSysApShutdownImage; + CSysApKeySndHandler* iSysApKeySndHandler; + CSysApCenRepController* iSysApCenRepController; + CSysApCenRepLightSettingsObserver* iSysApCenRepLightSettingsObserver; + CSysApCenRepBtObserver* iSysApCenRepBtObserver; + CSysApCenRepHacSettingObserver* iSysApCenRepHacSettingObserver; + + CSysApAudioRoutingObserver* iSysApAudioRoutingObserver; + CSysApPsmController* iSysApPsmController; + CHbSymbianVariant* iVariantAccState ; + CSysApSsSettingsObserver* iSysApSsSettingsObserver; + CSystemLock* iSysApSystemLock; + CSysApCenRepCallForwardingObserver* iSysApCenRepCallForwardingObserver; + CSysApBatteryInfoController* iSysApBatteryInfoController; + MSysApBtSapController* iSysApBtSapController; + CPeriodic* iSapTimer; + MSysApBtController* iSysApBtController; + CSysApCenRepLogsObserver* iSysApCenRepLogsObserver; + MSysApUsbIndicator* iSysApUsbIndicatorController; + CKeyguardAccessApi* iKeyguardController; + CHbDevicePowerMenuSymbian* iPowerMenuDialog; + CSysApKeyManagement* iSysApKeyManagement; + +// CSysApDriveList* iSysApDriveList; - CAknGlobalNote* iProfileNote; - TInt iProfileNoteId; - - TBool iLastPowerKeyWasShort; - TBool iIgnoreNextPowerKeyUpEvent; - TBool iIgnoreNextPowerKeyRepeats; - TBool iPowerKeyPopupMenuActive; - TBool iDisablePowerkeyMenu; - TBool iPowerkeyMenuPowerOffShown; - + private: + TBool iPowerKeyPopupMenuActive; TBool iDeviceLockEnabled; TBool iKeyLockEnabled; TBool iKeyLockOnBeforeCall; TBool iKeyLockOnBeforeAlarm; TBool iKeyLockOnBeforeCradle; - TBool iShowkeypadActivatedNoteAfterSoftReject; - - TBool iEmergencyCallActive; + TBool iResourcesFreed; + TInt iCapturedEKeyPowerOff; + TInt iCapturedEKeyPowerOffUpAndDowns; + TBool iOfflineModeActive; + TBool iShutdownStarted; + + TBool iIgnoreNextPowerKeyUpEvent; // need to be added this flag in maliks client side apis. + TBool iLastPowerKeyWasShort; + TBool iPowerKeyPopupMenuDismissed; // need to be added this flag in malik implementation. + TInt iKeyBoardRepeatCount; + TBool iIgnoreNextPowerKeyRepeats; + TInt iActiveProfileBeforeOfflineMode; + TBool iSimChangedDone; - TBool iResourcesFreed; - TBool iNsps; -#ifndef RD_MULTIPLE_DRIVE - TBool iHideFirstBeep; -#endif // RD_MULTIPLE_DRIVE - TBool iShutdownStarted; - TBool iAlarmOrChargingStateShutdownStarted; + TBool iIgnoreZeroNetworkBarNotifications; + TInt iApplicationScanningRoundNumberInBtSap; + TBool iTimeToKillInBtSap; + TBool iShowkeypadActivatedNoteAfterSoftReject; + TBool iCharging; // Indicates if charging is currently on + TBool iEmergencyCallActive; + TBool iCallActivated; // used in defining whether to show GPRS suspended note - TBool iIgnoreAccessorySpecificProfileChanges; - TBool iAccessoryJustConnected; - - TBool iHandleNextProfileEvent; TBool iActivateBt; TBool iDeactivateBt; -#ifndef RD_MULTIPLE_DRIVE - TBool iTimeToKill; // MMC Hot Swap - TInt iApplicationScanningRoundNumber; // MMC Hot Swap -#endif // RD_MULTIPLE_DRIVE - TBool iGprsActivated; // used in defining whether to show GPRS suspended note - TBool iGprsSuspended; // used in defining whether to show GPRS suspended note - TBool iCallActivated; // used in defining whether to show GPRS suspended note - TBool iGprsSuspendedNoteShown; - - TBool iMMCEjectUsed; -#ifndef RD_MULTIPLE_DRIVE - TBool iMMCPowerMenuEjectUsed; - TBool iMMCInserted; -#endif // RD_MULTIPLE_DRIVE - - CPeriodic* iTimer; - CPeriodic* iSapTimer; -#ifndef RD_STARTUP_ANIMATION_CUSTOMIZATION - CPeriodic* iAnimTimer; -#endif // RD_STARTUP_ANIMATION_CUSTOMIZATION - CSysApTimer* iSysApTimer; - -#ifndef RD_STARTUP_ANIMATION_CUSTOMIZATION - TInt iAnimationShowingTime; -#endif // RD_STARTUP_ANIMATION_CUSTOMIZATION - - CSysApKeySndHandler* iSysApKeySndHandler; - - TBool iIgnoreZeroNetworkBarNotifications; - - TBool iCharging; // Indicates if charging is currently on - CSysApKeyManagement* iSysApKeyManagement; - - CSysApMediatorObserver* iSysApMediatorObserver; - TBool iShutdownContinued; - - /** - * The default key handler. - * Own. - */ - CSysApDefaultKeyHandler* iSysApDefaultKeyHandler; - - TBool iPowerKeyPopupMenuDismissed; // Indicates if the popup menu has been dismissed - -#ifndef RD_MULTIPLE_DRIVE - TBool iHideNextBeep; // Prevents double beep when USB file transfer gets activated - TBool iFileManagerCloseDisabled; // Prevents File Manager to close on hotswap -#endif // RD_MULTIPLE_DRIVE - - CSysApAudioRoutingObserver* iSysApAudioRoutingObserver; - - /** - * Call forwarding status CenRep key observer. - * Own. - */ - CSysApCenRepCallForwardingObserver* iSysApCenRepCallForwardingObserver; - - /** - * Message waiting status CenRep key observer. - * Own. - */ - CSysApCenRepMsgWaitingObserver* iSysApCenRepMsgWaitingObserver; - -#ifdef RD_MULTIPLE_DRIVE - // First power menu index used for eject - TInt iPowerkeyMenuEjectSelectionBase; - - /** - * Drive list container - * Own. - */ - CSysApDriveList* iSysApDriveList; - - /** - * Drive unlock handler. - * Own. - */ - CSysApDriveUnlockHandler* iSysApDriveUnlockHandler; - - /** - * Drive eject handler. - * Own. - */ - CSysApDriveEjectHandler* iSysApDriveEjectHandler; - - /** - * Array for storing inserted memory cards. - * Own. - */ - RArray< CSysApDriveList::TMemoryCardEntry > iInsertedMemoryCards; - - // Stores drive for dismount query - TInt iDriveToDismount; - - // Stores drive for eject query - TInt iDriveToEject; -#endif // RD_MULTIPLE_DRIVE - - /** - * For USB charger detection. - */ - TSysApUsbChargerDetector iSysApUsbChargerDetector; - - /** - * SysAp power save mode controller. - * Own. - */ - CSysApPsmController* iSysApPsmController; + + TBool iIgnoreAccessorySpecificProfileChanges; + TBool iCheckLongPowerKeyEvent; - /** - * SysAp battery info controller. - * Own. - */ - CSysApBatteryInfoController* iSysApBatteryInfoController; - - /** - * Returns whether a de/encrypting operation is ongoing - * - * @since S60 3.1 - * @return TBool ETrue if a de/encrypting operation is in progress - */ - TBool IsEncryptionOperationOngoingL() const; - TInt iKeyBoardRepeatCount; - }; - -#endif // SYSAPAPPUI_H - -// End of File +// friend class CSysApWsClient; + }; + +#endif