--- a/phonecmdhandler/phonecmdhnlr/src/PhoneHandlerControl.cpp Tue Feb 02 01:11:09 2010 +0200
+++ b/phonecmdhandler/phonecmdhnlr/src/PhoneHandlerControl.cpp Fri Mar 19 09:40:14 2010 +0200
@@ -12,37 +12,38 @@
* Contributors:
*
* Description: Receives call handling related key presses from accessories and
-* executes them.
+* executes them.
*
*/
// INCLUDE FILES
-#include "PhoneHandlerControl.h"
-#include "PhoneHandlerService.h"
-#include "PhoneHandlerAnswerCall.h"
-#include "PhoneHandlerEndCall.h"
-#include "PhoneHandlerDialCall.h"
-#include "PhoneHandlerVoiceDial.h"
-#include "PhoneHandlerRedial.h"
-#include "PhoneHandlerMultipartyCall.h"
-#include "PhoneHandlerDTMF.h"
-#include "PhoneHandlerActive.h"
-#include "PhoneHandlerResponse.h"
-#include "PhoneHandlerCallState.h"
-#include "PhoneHandlerDebug.h"
+#include "PhoneHandlerControl.h"
+#include "PhoneHandlerService.h"
+#include "PhoneHandlerAnswerCall.h"
+#include "PhoneHandlerEndCall.h"
+#include "PhoneHandlerDialCall.h"
+#include "PhoneHandlerVoiceDial.h"
+#include "PhoneHandlerRedial.h"
+#include "PhoneHandlerMultipartyCall.h"
+#include "PhoneHandlerDTMF.h"
+#include "PhoneHandlerActive.h"
+#include "PhoneHandlerResponse.h"
+#include "PhoneHandlerCallState.h"
+#include "PhoneHandlerDebug.h"
#include <remconinterfaceselector.h>
-#include <RemConCallHandlingTarget.h>
-#include <CPbkContactEngine.h>
+#include <RemConCallHandlingTarget.h>
+// <-- QT PHONE START -->
+//#include <cpbkcontactengine.h>
+// <-- QT PHONE END-->
#include <ctsydomainpskeys.h>
#if 0
-#include <VoiceUIDomainPSKeys.h>
+#include <voiceuidomainpskeys.h>
#endif
#include <connect/sbdefs.h>
-#include <coreapplicationuisdomainpskeys.h>
// EXTERNAL DATA STRUCTURES
@@ -74,7 +75,7 @@
// -----------------------------------------------------------------------------
//
CPhoneHandlerControl::CPhoneHandlerControl()
- : iPrevState( EPSCTsyCallStateNone )
+ : iPrevState( EPSCTsyCallStateNone )
{
}
@@ -86,29 +87,29 @@
void CPhoneHandlerControl::ConstructL( CRemConInterfaceSelector* aIfSelector )
{
COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::ConstructL() start" );
-
+
if( !aIfSelector )
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::ConstructL() Create connection to RemCon." );
-
- // Target connection to RemCon FW hasn't been done.
- iInterfaceSelector = CRemConInterfaceSelector::NewL();
- iTarget = CRemConCallHandlingTarget::NewL( *iInterfaceSelector, *this );
- iInterfaceSelector->OpenTargetL();
- }
- else
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::ConstructL() Don't create connection to RemCon." );
-
- // Connection to RemCon FW as target has already been done in a process.
- iTarget = CRemConCallHandlingTarget::NewL( *aIfSelector, *this );
- }
-
- iResponse = CPhoneHandlerResponse::NewL( *this );
- iCallStateObserver = CPhoneHandlerCallState::NewL( *this );
-
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::ConstructL() end" );
- }
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::ConstructL() Create connection to RemCon." );
+
+ // Target connection to RemCon FW hasn't been done.
+ iInterfaceSelector = CRemConInterfaceSelector::NewL();
+ iTarget = CRemConCallHandlingTarget::NewL( *iInterfaceSelector, *this );
+ iInterfaceSelector->OpenTargetL();
+ }
+ else
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::ConstructL() Don't create connection to RemCon." );
+
+ // Connection to RemCon FW as target has already been done in a process.
+ iTarget = CRemConCallHandlingTarget::NewL( *aIfSelector, *this );
+ }
+
+ iResponse = CPhoneHandlerResponse::NewL( *this );
+ iCallStateObserver = CPhoneHandlerCallState::NewL( *this );
+
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::ConstructL() end" );
+ }
// -----------------------------------------------------------------------------
// CPhoneHandlerControl::NewL
@@ -116,7 +117,7 @@
// -----------------------------------------------------------------------------
//
CPhoneHandlerControl* CPhoneHandlerControl::NewL(
- CRemConInterfaceSelector* aIfSelector )
+ CRemConInterfaceSelector* aIfSelector )
{
COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::NewL() start" );
@@ -137,19 +138,19 @@
COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::~CPhoneHandlerControl() start" );
if( iInterfaceSelector )
- {
- delete iInterfaceSelector;
- }
+ {
+ delete iInterfaceSelector;
+ }
if( iResponse )
- {
- iResponse->Delete();
- }
-
+ {
+ iResponse->Delete();
+ }
+
if( iCallStateObserver )
- {
- delete iCallStateObserver;
- }
+ {
+ delete iCallStateObserver;
+ }
COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::~CPhoneHandlerControl() end" );
}
@@ -235,28 +236,28 @@
{
COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::NotifyCallState() aState=%d", aState );
- if( aState == EPSCTsyCallStateConnected && iPrevState != EPSCTsyCallStateHold )
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::NotifyCallState(): iActiveCalls++" );
-
- iActiveCalls++;
- }
- else if( aState == EPSCTsyCallStateDisconnecting &&
- ( iPrevState == EPSCTsyCallStateConnected || iPrevState == EPSCTsyCallStateHold ))
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::NotifyCallState(): iActiveCalls--" );
-
- iActiveCalls--;
- }
- else if( aState == EPSCTsyCallStateNone )
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::NotifyCallState(): iActiveCalls = 0" );
- iActiveCalls = 0;
- }
-
- iPrevState = aState;
- COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::NotifyCallState() iActiveCalls=%d", iActiveCalls );
- }
+ if( aState == EPSCTsyCallStateConnected && iPrevState != EPSCTsyCallStateHold )
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::NotifyCallState(): iActiveCalls++" );
+
+ iActiveCalls++;
+ }
+ else if( aState == EPSCTsyCallStateDisconnecting &&
+ ( iPrevState == EPSCTsyCallStateConnected || iPrevState == EPSCTsyCallStateHold ))
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::NotifyCallState(): iActiveCalls--" );
+
+ iActiveCalls--;
+ }
+ else if( aState == EPSCTsyCallStateNone )
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::NotifyCallState(): iActiveCalls = 0" );
+ iActiveCalls = 0;
+ }
+
+ iPrevState = aState;
+ COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::NotifyCallState() iActiveCalls=%d", iActiveCalls );
+ }
// -----------------------------------------------------------------------------
// CPhoneHandlerControl::AnswerCall
@@ -264,26 +265,26 @@
// -----------------------------------------------------------------------------
//
void CPhoneHandlerControl::AnswerCall()
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::AnswerCall() start" );
-
- StartProcessing( ERemConExtAnswerCall );
-
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::AnswerCall() end" );
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::AnswerCall() start" );
+
+ StartProcessing( ERemConExtAnswerCall );
+
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::AnswerCall() end" );
}
-
+
// -----------------------------------------------------------------------------
// CPhoneHandlerControl::EndCall
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
void CPhoneHandlerControl::EndCall()
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::EndCall() start" );
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::EndCall() start" );
StartProcessing( ERemConExtEndCall );
-
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::EndCall() end" );
+
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::EndCall() end" );
}
// -----------------------------------------------------------------------------
@@ -292,12 +293,12 @@
// -----------------------------------------------------------------------------
//
void CPhoneHandlerControl::AnswerEndCall()
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::AnswerEndCall() start" );
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::AnswerEndCall() start" );
StartProcessing( ERemConExtAnswerEnd );
-
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::AnswerEndCall() end" );
+
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::AnswerEndCall() end" );
}
// -----------------------------------------------------------------------------
@@ -305,7 +306,7 @@
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
-#if 0 // SCB CR EHSA-7APJWF: SIND subscribes to RemCon directly
+#if 0 // SCB CR EHSA-7APJWF: SIND subscribes to RemCon directly
void CPhoneHandlerControl::VoiceDial( const TBool aActivate )
{
COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::VoiceDial() aActivate=%d", aActivate );
@@ -322,17 +323,17 @@
iProperty.Get( KPSUidVoiceUiAccMonitor, KVoiceUiOpenKey, voiceUiState );
if( voiceUiState == KVoiceUiIsOpen )
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::VoiceDial() voice UI is open!" );
- iProperty.Set( KPSUidVoiceUiAccMonitor , KVoiceUiAccessoryEvent, ERemConExtVoiceDial );
- iResponse->SetResponse( ERemConExtVoiceDial, KErrNone );
- iResponse->Process();
- }
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::VoiceDial() voice UI is open!" );
+ iProperty.Set( KPSUidVoiceUiAccMonitor , KVoiceUiAccessoryEvent, ERemConExtVoiceDial );
+ iResponse->SetResponse( ERemConExtVoiceDial, KErrNone );
+ iResponse->Process();
+ }
else
- {
- iActivate = aActivate;
- StartProcessing( ERemConExtVoiceDial );
- }
+ {
+ iActivate = aActivate;
+ StartProcessing( ERemConExtVoiceDial );
+ }
}
else
{
@@ -342,18 +343,11 @@
COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::VoiceDial() end" );
}
-#else
+#else
void CPhoneHandlerControl::VoiceDial( const TBool /*aActivate*/ )
{
COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::VoiceDial()" );
- if ( IsAutoLockOn() && !IsBTAccessoryCmd() )
- {
- iResponse->SetResponse( ERemConExtVoiceDial, KErrAccessDenied );
- iResponse->Process();
- return;
- }
-
iResponse->SetResponse( ERemConExtVoiceDial, KErrNone );
iResponse->Process();
@@ -366,20 +360,13 @@
// -----------------------------------------------------------------------------
//
void CPhoneHandlerControl::LastNumberRedial( )
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::LastNumberRedial() start" );
-
- if ( IsAutoLockOn() && !IsBTAccessoryCmd() )
- {
- iResponse->SetResponse( ERemConExtLastNumberRedial, KErrAccessDenied );
- iResponse->Process();
- return;
- }
-
- StartProcessing( ERemConExtLastNumberRedial );
-
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::LastNumberRedial() end" );
- }
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::LastNumberRedial() start" );
+
+ StartProcessing( ERemConExtLastNumberRedial );
+
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::LastNumberRedial() end" );
+ }
// -----------------------------------------------------------------------------
// CPhoneHandlerControl::DialCall
@@ -387,31 +374,24 @@
// -----------------------------------------------------------------------------
//
void CPhoneHandlerControl::DialCall( const TDesC8& aTelNumber )
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::DialCall() start" );
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::DialCall() start" );
- if ( IsAutoLockOn() && !IsBTAccessoryCmd() )
- {
- iResponse->SetResponse( ERemConExtDialCall, KErrAccessDenied );
- iResponse->Process();
- return;
- }
-
// Check aTelNumber range
- if( KPhCltTelephoneNumberLength < aTelNumber.Length() )
- {
- COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::DialCall() number value=%d too long", aTelNumber.Size() );
- iResponse->SetResponse( ERemConExtDialCall, KErrArgument );
- iResponse->Process();
- return;
- }
-
- iTelNumber.Copy( aTelNumber );
-
+ if( KPhCltTelephoneNumberLength < aTelNumber.Length() )
+ {
+ COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::DialCall() number value=%d too long", aTelNumber.Size() );
+ iResponse->SetResponse( ERemConExtDialCall, KErrArgument );
+ iResponse->Process();
+ return;
+ }
+
+ iTelNumber.Copy( aTelNumber );
+
StartProcessing( ERemConExtDialCall );
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::DialCall() end" );
- }
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::DialCall() end" );
+ }
// -----------------------------------------------------------------------------
// CPhoneHandlerControl::MultipartyCalling
@@ -439,85 +419,85 @@
// -----------------------------------------------------------------------------
//
void CPhoneHandlerControl::MultipartyCalling( const TDesC8& aData )
- {
- TBool error( EFalse );
- iChldCommand = 0;
- iChldCallNumber = 0;
- TBuf8< KRemConExtParamMaxLength > buf( aData );
- buf.Trim();
- TInt length = buf.Length();
-
- // Check invalid number of characters
- if ( length < KMultipartyCallMinParam || length > KMultipartyCallMaxParam )
- {
- error = ETrue;
- }
- else
- {
- TLex8 param;
- // Set command
- param.Assign( buf.Mid( 0, 1 ) );
- if( param.Val( iChldCommand ) != KErrNone )
- {
- error = ETrue;
- }
- else if ( length == KMultipartyCallMaxParam )
- {
- // Set call number
- param.Assign( buf.Mid(1) );
- if( param.Val( iChldCallNumber ) != KErrNone )
- {
- error = ETrue;
- }
- }
- }
+ {
+ TBool error( EFalse );
+ iChldCommand = 0;
+ iChldCallNumber = 0;
+ TBuf8< KRemConExtParamMaxLength > buf( aData );
+ buf.Trim();
+ TInt length = buf.Length();
+
+ // Check invalid number of characters
+ if ( length < KMultipartyCallMinParam || length > KMultipartyCallMaxParam )
+ {
+ error = ETrue;
+ }
+ else
+ {
+ TLex8 param;
+ // Set command
+ param.Assign( buf.Mid( 0, 1 ) );
+ if( param.Val( iChldCommand ) != KErrNone )
+ {
+ error = ETrue;
+ }
+ else if ( length == KMultipartyCallMaxParam )
+ {
+ // Set call number
+ param.Assign( buf.Mid(1) );
+ if( param.Val( iChldCallNumber ) != KErrNone )
+ {
+ error = ETrue;
+ }
+ }
+ }
- if( error )
- {
- // Invalid command
- iResponse->SetResponse( ERemConExt3WaysCalling, KErrArgument );
- iResponse->Process();
- return;
- }
-
- COM_TRACE_2( "[PHONECMDHANDLER] CPhoneHandlerControl::MultipartyCalling() iChldCommand=%d, iChldCallNumber=%d", iChldCommand, iChldCallNumber );
-
- StartProcessing( ERemConExt3WaysCalling );
-
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::MultipartyCalling() end" );
- }
-
+ if( error )
+ {
+ // Invalid command
+ iResponse->SetResponse( ERemConExt3WaysCalling, KErrArgument );
+ iResponse->Process();
+ return;
+ }
+
+ COM_TRACE_2( "[PHONECMDHANDLER] CPhoneHandlerControl::MultipartyCalling() iChldCommand=%d, iChldCallNumber=%d", iChldCommand, iChldCallNumber );
+
+ StartProcessing( ERemConExt3WaysCalling );
+
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::MultipartyCalling() end" );
+ }
+
// -----------------------------------------------------------------------------
// CPhoneHandlerControl::GenerateDTMF
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
void CPhoneHandlerControl::GenerateDTMF( const TChar aChar )
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::GenerateDTMF() start" );
-
- iChar = aChar;
-
- StartProcessing( ERemConExtGenerateDTMF );
-
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::GenerateDTMF() end" );
- }
-
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::GenerateDTMF() start" );
+
+ iChar = aChar;
+
+ StartProcessing( ERemConExtGenerateDTMF );
+
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::GenerateDTMF() end" );
+ }
+
// -----------------------------------------------------------------------------
// CPhoneHandlerControl::SpeedDial
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
void CPhoneHandlerControl::SpeedDial( const TInt aIndex )
- {
- COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::SpeedDial() aIndex=%d", aIndex );
+ {
+ COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::SpeedDial() aIndex=%d", aIndex );
- iIndex = aIndex;
-
- StartProcessing( ERemConExtSpeedDial );
-
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::SpeedDial() end" );
- }
+ iIndex = aIndex;
+
+ StartProcessing( ERemConExtSpeedDial );
+
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::SpeedDial() end" );
+ }
// -----------------------------------------------------------------------------
// CPhoneHandlerControl::StartProcessing
@@ -526,41 +506,41 @@
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
-void CPhoneHandlerControl::StartProcessing(
- const TRemConExtCallHandlingApiOperationId aOperation )
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::StartProcessing() start" );
-
- // Create a service
- MPhoneHandlerService* service = NULL;
- TInt error( KErrNone );
- TRAP( error, service = CreateServiceL( aOperation ) );
-
- COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() returned %d", error );
-
- if( error )
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::StartProcessing(): service wasn't created succesfully." );
-
- // An error happened. Delete service, if it exists.
- if( service )
- {
- service->Delete();
- service = NULL;
- }
-
- iResponse->SetResponse( aOperation, error );
- iResponse->Process();
- return;
- }
- else
- {
- // start service
- service->Process();
- iSwitchCall = EFalse;
- }
-
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::StartProcessing() end" );
+void CPhoneHandlerControl::StartProcessing(
+ const TRemConExtCallHandlingApiOperationId aOperation )
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::StartProcessing() start" );
+
+ // Create a service
+ MPhoneHandlerService* service = NULL;
+ TInt error( KErrNone );
+ TRAP( error, service = CreateServiceL( aOperation ) );
+
+ COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() returned %d", error );
+
+ if( error )
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::StartProcessing(): service wasn't created succesfully." );
+
+ // An error happened. Delete service, if it exists.
+ if( service )
+ {
+ service->Delete();
+ service = NULL;
+ }
+
+ iResponse->SetResponse( aOperation, error );
+ iResponse->Process();
+ return;
+ }
+ else
+ {
+ // start service
+ service->Process();
+ iSwitchCall = EFalse;
+ }
+
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::StartProcessing() end" );
}
// -----------------------------------------------------------------------------
@@ -569,7 +549,7 @@
// -----------------------------------------------------------------------------
//
MPhoneHandlerService* CPhoneHandlerControl::
- CreateServiceL( const TRemConExtCallHandlingApiOperationId aOperation )
+ CreateServiceL( const TRemConExtCallHandlingApiOperationId aOperation )
{
COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() start" );
@@ -578,162 +558,162 @@
switch( aOperation )
{
case ERemConExtAnswerCall:
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtAnswerCall command" );
- COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - iActiveCalls is %d", iActiveCalls );
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtAnswerCall command" );
+ COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - iActiveCalls is %d", iActiveCalls );
- /*
- if( iActiveCalls > 0 )
- {
- // Multiparty call
- iSwitchCall = ETrue;
- pService = CPhoneHandlerMultipartyCall::NewL( *this );
- }
- else
- {
- // non-multiparty call
- pService = CPhoneHandlerAnswerCall::NewL( *this );
- }
- */
- pService = CPhoneHandlerAnswerCall::NewL( *this );
+ /*
+ if( iActiveCalls > 0 )
+ {
+ // Multiparty call
+ iSwitchCall = ETrue;
+ pService = CPhoneHandlerMultipartyCall::NewL( *this );
+ }
+ else
+ {
+ // non-multiparty call
+ pService = CPhoneHandlerAnswerCall::NewL( *this );
+ }
+ */
+ pService = CPhoneHandlerAnswerCall::NewL( *this );
- break;
- }
-
+ break;
+ }
+
case ERemConExtEndCall:
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtEndCall command" );
-
- pService = CPhoneHandlerEndCall::NewL( *this );
-
- break;
- }
-
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtEndCall command" );
+
+ pService = CPhoneHandlerEndCall::NewL( *this );
+
+ break;
+ }
+
case ERemConExtAnswerEnd:
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtAnswerEnd command" );
-
- TInt callState( EPSCTsyCallStateUninitialized );
- iProperty.Get( KPSUidCtsyCallInformation, KCTsyCallState, callState );
-
- COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() call state = %d", callState );
-
- if( callState != EPSCTsyCallStateUninitialized &&
- callState != EPSCTsyCallStateNone &&
- callState != EPSCTsyCallStateDisconnecting )
- {
- if( callState == EPSCTsyCallStateAlerting ||
- callState == EPSCTsyCallStateDialling ||
- callState == EPSCTsyCallStateAnswering ||
- callState == EPSCTsyCallStateConnected ||
- callState == EPSCTsyCallStateHold )
- {
- pService = CPhoneHandlerEndCall::NewL( *this,
- aOperation );
- }
- // callState == EPSTelephonyCallStateRinging
- else
- {
- COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() iActiveCalls = %d", iActiveCalls );
- if( iActiveCalls > 0 )
- {
- // multicall case : End call that has existed longer.
- // (From UI viewpoint ringing call is in waiting state.)
- pService = CPhoneHandlerEndCall::NewL( *this,
- aOperation );
- if( callState == EPSCTsyCallStateRinging )
- {
- // In multiparty case the telephony key is not
- // updated. The call amount is updated manually.
- iActiveCalls--;
- }
- }
- else
- {
- pService = CPhoneHandlerAnswerCall::NewL(
- *this,
- aOperation );
- }
- }
- }
- else
- {
- // Send / end button was pressed when there were not
- // any calls active. Response has to be sent back to accessory
- // at least for following reasons:
-
- // 1. RemCon FW releases message related memory only when response
- // is sent back to accessory.
-
- // 2. BT accessory key press producing ERemConExtAnswerEnd
- // operation has some other meaning than answer/end call
- // and it's processed by proper client. However, there
- // might be a situation where proper client isn't active
- // and can't process command. In any case RemCon/BT accessory
- // requires response to command. That's why PhoneCmdHandler
- // sends reponse to command.
-
- iResponse->SetResponse( aOperation, KErrNone );
- pService = iResponse;
- }
- break;
- }
-
- case ERemConExtDialCall:
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtDialCall command" );
-
- pService = CPhoneHandlerDialCall::NewL( *this );
- break;
- }
-
- case ERemConExtVoiceDial:
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtVoiceDial command" );
-
- pService = CPhoneHandlerVoiceDial::NewL( *this );
- break;
- }
-
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtAnswerEnd command" );
+
+ TInt callState( EPSCTsyCallStateUninitialized );
+ iProperty.Get( KPSUidCtsyCallInformation, KCTsyCallState, callState );
+
+ COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() call state = %d", callState );
+
+ if( callState != EPSCTsyCallStateUninitialized &&
+ callState != EPSCTsyCallStateNone &&
+ callState != EPSCTsyCallStateDisconnecting )
+ {
+ if( callState == EPSCTsyCallStateAlerting ||
+ callState == EPSCTsyCallStateDialling ||
+ callState == EPSCTsyCallStateAnswering ||
+ callState == EPSCTsyCallStateConnected ||
+ callState == EPSCTsyCallStateHold )
+ {
+ pService = CPhoneHandlerEndCall::NewL( *this,
+ aOperation );
+ }
+ // callState == EPSTelephonyCallStateRinging
+ else
+ {
+ COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() iActiveCalls = %d", iActiveCalls );
+ if( iActiveCalls > 0 )
+ {
+ // multicall case : End call that has existed longer.
+ // (From UI viewpoint ringing call is in waiting state.)
+ pService = CPhoneHandlerEndCall::NewL( *this,
+ aOperation );
+ if( callState == EPSCTsyCallStateRinging )
+ {
+ // In multiparty case the telephony key is not
+ // updated. The call amount is updated manually.
+ iActiveCalls--;
+ }
+ }
+ else
+ {
+ pService = CPhoneHandlerAnswerCall::NewL(
+ *this,
+ aOperation );
+ }
+ }
+ }
+ else
+ {
+ // Send / end button was pressed when there were not
+ // any calls active. Response has to be sent back to accessory
+ // at least for following reasons:
+
+ // 1. RemCon FW releases message related memory only when response
+ // is sent back to accessory.
+
+ // 2. BT accessory key press producing ERemConExtAnswerEnd
+ // operation has some other meaning than answer/end call
+ // and it's processed by proper client. However, there
+ // might be a situation where proper client isn't active
+ // and can't process command. In any case RemCon/BT accessory
+ // requires response to command. That's why PhoneCmdHandler
+ // sends reponse to command.
+
+ iResponse->SetResponse( aOperation, KErrNone );
+ pService = iResponse;
+ }
+ break;
+ }
+
+ case ERemConExtDialCall:
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtDialCall command" );
+
+ pService = CPhoneHandlerDialCall::NewL( *this );
+ break;
+ }
+
+ case ERemConExtVoiceDial:
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtVoiceDial command" );
+
+ pService = CPhoneHandlerVoiceDial::NewL( *this );
+ break;
+ }
+
case ERemConExtLastNumberRedial:
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtLastNumberRedial command" );
-
- pService = CPhoneHandlerLastNumberRedial::NewL( *this );
- break;
- }
-
- case ERemConExt3WaysCalling:
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExt3WaysCalling command" );
-
- pService = CPhoneHandlerMultipartyCall::NewL( *this );
- break;
- }
-
- case ERemConExtGenerateDTMF:
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtGenerateDTMF command" );
-
- pService = CPhoneHandlerDTMF::NewL( *this );
- break;
- }
-
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtLastNumberRedial command" );
+
+ pService = CPhoneHandlerLastNumberRedial::NewL( *this );
+ break;
+ }
+
+ case ERemConExt3WaysCalling:
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExt3WaysCalling command" );
+
+ pService = CPhoneHandlerMultipartyCall::NewL( *this );
+ break;
+ }
+
+ case ERemConExtGenerateDTMF:
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtGenerateDTMF command" );
+
+ pService = CPhoneHandlerDTMF::NewL( *this );
+ break;
+ }
+
case ERemConExtSpeedDial:
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtSpeedDial command" );
-
- InitializeSpeedDialL();
- pService = CPhoneHandlerDialCall::NewL( *this,
- aOperation );
- break;
- }
-
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() - ERemConExtSpeedDial command" );
+
+ InitializeSpeedDialL();
+ pService = CPhoneHandlerDialCall::NewL( *this,
+ aOperation );
+ break;
+ }
+
default:
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() Unspecified state" );
- break;
- }
+ {
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() Unspecified state" );
+ break;
+ }
};
COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::CreateServiceL() end, %d", pService );
@@ -747,33 +727,38 @@
//
void CPhoneHandlerControl::InitializeSpeedDialL()
{
+
+// <-- QT PHONE START -->
+/*
COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::InitializeSpeedDialL() start" );
// first check contack engine is not in busy
TInt cntEngState( 0 );
- TInt err = iProperty.Get( KUidSystemCategory, conn::KUidBackupRestoreKey, cntEngState );
+ TInt err = iProperty.Get( KUidSystemCategory, conn::KUidBackupRestoreKey, cntEngState );
- if( err == KErrNotFound || cntEngState == 0 ||
- cntEngState & conn::KBURPartTypeMask == conn::EBURNormal ||
- cntEngState & conn::KBackupIncTypeMask == conn::ENoBackup )
- {
- // Get phone number from phonebook by index
- CPbkContactEngine* ptr = CPbkContactEngine::NewL();
+ if( err == KErrNotFound || cntEngState == 0 ||
+ cntEngState & conn::KBURPartTypeMask == conn::EBURNormal ||
+ cntEngState & conn::KBackupIncTypeMask == conn::ENoBackup )
+ {
+ // Get phone number from phonebook by index
+ CPbkContactEngine* ptr = CPbkContactEngine::NewL();
CleanupStack::PushL( ptr );
- TRACE_ASSERT( ptr != NULL );
- ptr->GetSpeedDialFieldL( iIndex, iTelNumber );
- COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::InitializeSpeedDialL() speed dial number is %S", &iTelNumber );
- CleanupStack::PopAndDestroy( ptr );
- }
- else
- {
- // contact engine is in busy
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::InitializeSpeedDialL() contact engine is in backup/restore" );
- User::Leave( KErrInUse );
- }
-
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::InitializeSpeedDialL() end" );
- }
+ TRACE_ASSERT( ptr != NULL );
+ ptr->GetSpeedDialFieldL( iIndex, iTelNumber );
+ COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::InitializeSpeedDialL() speed dial number is %S", &iTelNumber );
+ CleanupStack::PopAndDestroy( ptr );
+ }
+ else
+ {
+ // contact engine is in busy
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::InitializeSpeedDialL() contact engine is in backup/restore" );
+ User::Leave( KErrInUse );
+ }
+*/
+// <-- QT PHONE END -->
+
+ COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::InitializeSpeedDialL() end" );
+ }
// -----------------------------------------------------------------------------
// CPhoneHandlerControl::SwitchCall
@@ -783,52 +768,7 @@
TBool CPhoneHandlerControl::SwitchCall()
{
return iSwitchCall;
- }
-
-// ---------------------------------------------------------
-// CPhoneHandlerControl::IsAutoLockOn
-// ---------------------------------------------------------
-//
-TBool CPhoneHandlerControl::IsAutoLockOn() const
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::IsAutoLockOn() start " );
- TInt err( KErrNone );
- TInt value( EAutolockStatusUninitialized );
-
- err = RProperty::Get( KPSUidCoreApplicationUIs, KCoreAppUIsAutolockStatus, value );
- if ( err != KErrNone )
- {
- value = err;
- }
- COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::IsAutoLockOn() autolock value = %d", value );
-
- return value > EAutolockOff ? ETrue : EFalse;
-
- }
-// ---------------------------------------------------------
-// CPhoneHandlerControl::IsBTAccessoryCmd
-// ---------------------------------------------------------
-//
-TBool CPhoneHandlerControl::IsBTAccessoryCmd() const
- {
- COM_TRACE_( "[PHONECMDHANDLER] CPhoneHandlerControl::IsBTAccessoryCmd() start " );
- TBool retval( EFalse );
-
- TRemConExtCmdSource source;
- iTarget->GetCommandSourceInfo( source );
- if ( source == ERemConExtCmdSourceBluetooth )
- {
- retval = ETrue;
- }
-
- COM_TRACE_1( "[PHONECMDHANDLER] CPhoneHandlerControl::IsBTAccessoryCmd() GetCommandSourceInfo = %d", source );
-
- return retval;
- }
-
-
-
-
+ }
// ======================== OTHER EXPORTED FUNCTIONS ===========================
// End of File