193 // |
193 // |
194 void CPhoneTwoSingles::HandleIdleL( TInt aCallId ) |
194 void CPhoneTwoSingles::HandleIdleL( TInt aCallId ) |
195 { |
195 { |
196 __LOGMETHODSTARTEND( EPhoneUIStates, |
196 __LOGMETHODSTARTEND( EPhoneUIStates, |
197 "CPhoneTwoSingles::HandleIdleL()"); |
197 "CPhoneTwoSingles::HandleIdleL()"); |
198 BeginUiUpdateLC(); |
198 TransitionHandlerL().BeginUiUpdateLC(); |
199 |
199 |
200 // Remove call |
200 // Remove call |
201 iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId ); |
201 iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId ); |
202 |
202 |
203 TPhoneCmdParamInteger activeCallCount; |
203 TPhoneCmdParamInteger activeCallCount; |
376 holdFlag.SetBoolean( EFalse ); |
376 holdFlag.SetBoolean( EFalse ); |
377 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag ); |
377 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag ); |
378 |
378 |
379 SetTouchPaneButtons( EPhoneConferenceButtons ); |
379 SetTouchPaneButtons( EPhoneConferenceButtons ); |
380 SetTouchPaneButtonEnabled( EPhoneInCallCmdPrivate ); |
380 SetTouchPaneButtonEnabled( EPhoneInCallCmdPrivate ); |
381 EndUiUpdate(); |
381 TransitionHandlerL().EndUiUpdate(); |
382 |
382 |
383 UpdateCbaL( EPhoneCallHandlingInCallCBA ); |
383 UpdateCbaL( EPhoneCallHandlingInCallCBA ); |
384 |
|
385 // Go to conference state |
|
386 // No need for CBA update |
384 // No need for CBA update |
387 iStateMachine->ChangeState( EPhoneStateConference ); |
385 iStateMachine->ChangeState( EPhoneStateConference ); |
388 } |
386 } |
389 |
387 |
390 // ----------------------------------------------------------- |
388 // ----------------------------------------------------------- |
392 // ----------------------------------------------------------- |
390 // ----------------------------------------------------------- |
393 // |
391 // |
394 void CPhoneTwoSingles::HandleIncomingL( TInt aCallId ) |
392 void CPhoneTwoSingles::HandleIncomingL( TInt aCallId ) |
395 { |
393 { |
396 __LOGMETHODSTARTEND( EPhoneUIStates, |
394 __LOGMETHODSTARTEND( EPhoneUIStates, |
397 "CPhoneTwoSingles::HandleIncomingL()"); |
395 "CPhoneTwoSingles::HandleIncomingL()"); |
398 |
|
399 CPhonePubSubProxy::Instance()->ChangePropertyValue( |
396 CPhonePubSubProxy::Instance()->ChangePropertyValue( |
400 KPSUidScreenSaver, |
397 KPSUidScreenSaver, |
401 KScreenSaverAllowScreenSaver, |
398 KScreenSaverAllowScreenSaver, |
402 EPhoneScreensaverNotAllowed ); |
399 EPhoneScreensaverNotAllowed ); |
403 |
400 TransitionHandlerL().IncomingCallUiUpdateLC(); |
404 IsNumberEntryUsedL() ? |
|
405 BeginTransEffectLC( ECallUiAppear ) : |
|
406 BeginTransEffectLC( ENumberEntryOpen ); |
|
407 BeginUiUpdateLC(); |
|
408 |
401 |
409 // Hide the number entry if it exists |
402 // Hide the number entry if it exists |
410 if ( IsNumberEntryUsedL() ) |
403 if ( IsNumberEntryUsedL() ) |
411 { |
404 { |
412 SetNumberEntryVisibilityL( EFalse ); |
405 SetNumberEntryVisibilityL( EFalse ); |
413 } |
406 } |
414 |
407 |
|
408 // Get allow waiting call header param value. |
415 TPhoneCmdParamBoolean dialerParam; |
409 TPhoneCmdParamBoolean dialerParam; |
416 dialerParam.SetBoolean( ETrue ); |
410 dialerParam.SetBoolean( ETrue ); |
417 |
|
418 // Get allow waiting call header param value. |
|
419 AllowShowingOfWaitingCallHeaderL( dialerParam ); |
411 AllowShowingOfWaitingCallHeaderL( dialerParam ); |
420 |
412 |
421 // Close fast swap window if it's displayed |
413 // Close fast swap window if it's displayed |
422 EikonEnv()->DismissTaskList(); |
414 EikonEnv()->DismissTaskList(); |
423 |
415 |
424 // Display incoming call |
|
425 DisplayIncomingCallL( aCallId, dialerParam ); |
416 DisplayIncomingCallL( aCallId, dialerParam ); |
426 |
417 |
427 // Set touch controls |
418 // Set touch controls |
428 SetTouchPaneButtonDisabled( EPhoneCallComingCmdAnswer ); |
419 SetTouchPaneButtonDisabled( EPhoneCallComingCmdAnswer ); |
429 |
|
430 SetTouchPaneButtons( EPhoneWaitingCallButtons ); |
420 SetTouchPaneButtons( EPhoneWaitingCallButtons ); |
431 |
421 |
432 EndUiUpdate(); |
422 TransitionHandlerL().EndUiUpdateAndEffect(); |
433 EndTransEffect(); |
423 |
434 |
|
435 // Go to incoming state |
|
436 UpdateCbaL( EPhoneCallHandlingCallWaitingCBA ); |
424 UpdateCbaL( EPhoneCallHandlingCallWaitingCBA ); |
437 iStateMachine->ChangeState( EPhoneStateTwoSinglesAndWaiting ); |
425 iStateMachine->ChangeState( EPhoneStateTwoSinglesAndWaiting ); |
438 } |
426 } |
439 |
427 |
440 // ----------------------------------------------------------- |
428 // ----------------------------------------------------------- |