phoneapp/phoneuistates/src/cphoneconferenceandsingleandwaiting.cpp
changeset 78 baacf668fe89
parent 76 cfea66083b62
equal deleted inserted replaced
76:cfea66083b62 78:baacf668fe89
    25 #include "tphonecmdparamcallheaderdata.h"
    25 #include "tphonecmdparamcallheaderdata.h"
    26 #include "phonestatedefinitionsgsm.h"
    26 #include "phonestatedefinitionsgsm.h"
    27 #include "phonelogger.h"
    27 #include "phonelogger.h"
    28 #include "tphonecmdparamboolean.h"
    28 #include "tphonecmdparamboolean.h"
    29 #include "tphonecmdparaminteger.h"
    29 #include "tphonecmdparaminteger.h"
    30 #include "tphonecmdparamcallstatedata.h"
       
    31 #include "cphonemainresourceresolver.h"
    30 #include "cphonemainresourceresolver.h"
    32 #include "phonerssbase.h"
    31 #include "phonerssbase.h"
    33 #include "tphonecmdparamglobalnote.h"
    32 #include "tphonecmdparamglobalnote.h"
    34 #include "phoneui.hrh"
    33 #include "phoneui.hrh"
    35 #include "mphonestorage.h"
    34 #include "mphonestorage.h"
    36 #include "cphonecenrepproxy.h"
    35 #include "cphonecenrepproxy.h"
       
    36 #include "phonecallutil.h"
    37 #include <telephonyvariant.hrh>
    37 #include <telephonyvariant.hrh>
    38 
    38 
    39 // ================= MEMBER FUNCTIONS =======================
    39 // ================= MEMBER FUNCTIONS =======================
    40 
    40 
    41 // C++ default constructor can NOT contain any code, that
    41 // C++ default constructor can NOT contain any code, that
   149             // Idle message came for conference member.
   149             // Idle message came for conference member.
   150             MakeTransitionAccordingToActiveCallsL();
   150             MakeTransitionAccordingToActiveCallsL();
   151             }
   151             }
   152         else
   152         else
   153             {
   153             {
   154             TPhoneCmdParamCallStateData callStateData;
   154             TInt callId = PhoneCallUtil::CallIdByState( EPEStateRinging );
   155             callStateData.SetCallState( EPEStateRinging );
   155             if( callId >= 0 )
   156             iViewCommandHandle->HandleCommandL( EPhoneViewGetCallIdByState,
       
   157                 &callStateData );
       
   158             if( callStateData.CallId() >= 0 )
       
   159                 {
   156                 {
   160                 // We have Conference and Waiting calls left
   157                 // We have Conference and Waiting calls left
   161                 MakeStateTransitionToConferenceAndWaitingL( aCallId );
   158                 MakeStateTransitionToConferenceAndWaitingL( aCallId );
   162                 }
   159                 }
   163             else
   160             else
   264         EPhoneViewGetCountOfActiveCalls, &activeCallCount );
   261         EPhoneViewGetCountOfActiveCalls, &activeCallCount );
   265     switch( activeCallCount.Integer() )
   262     switch( activeCallCount.Integer() )
   266          {
   263          {
   267          case ENoActiveCalls: // Go to incoming state
   264          case ENoActiveCalls: // Go to incoming state
   268             {
   265             {
   269             TPhoneCmdParamCallStateData callStateData;
   266             TInt callId = PhoneCallUtil::CallIdByState( EPEStateRinging );
   270             callStateData.SetCallState( EPEStateRinging );
   267             if ( callId != KErrNotFound )
   271             iViewCommandHandle->HandleCommandL( EPhoneViewGetCallIdByState,
   268                 {
   272                 &callStateData );
   269                 SetRingingTonePlaybackL( callId );
   273             if ( callStateData.CallId() != KErrNotFound )
   270                 UpdateCallHeaderAndUiCommandsL( callId );
   274                 {
       
   275                 UpdateCallHeaderAndUiCommandsL( callStateData.CallId() );
       
   276                 SetRingingTonePlaybackL( callStateData.CallId() );
       
   277                 SetBackButtonActive(EFalse);
   271                 SetBackButtonActive(EFalse);
   278                 iStateMachine->ChangeState( EPhoneStateIncoming );
   272                 iStateMachine->ChangeState( EPhoneStateIncoming );
   279                 }
   273                 }
   280             else
   274             else
   281                 {
   275                 {