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 { |