322 // Conference call is no longer on hold |
322 // Conference call is no longer on hold |
323 TPhoneCmdParamBoolean holdFlag; |
323 TPhoneCmdParamBoolean holdFlag; |
324 holdFlag.SetBoolean( EFalse ); |
324 holdFlag.SetBoolean( EFalse ); |
325 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag ); |
325 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag ); |
326 |
326 |
327 TransitionHandlerL().BeginUiUpdateLC(); |
327 BeginUiUpdateLC(); |
328 iViewCommandHandle->ExecuteCommandL( |
328 iViewCommandHandle->ExecuteCommandL( |
329 EPhoneViewUpdateBubble, KConferenceCallId, &callHeaderParam ); |
329 EPhoneViewUpdateBubble, KConferenceCallId, &callHeaderParam ); |
330 |
330 |
331 SetTouchPaneButtons( EPhoneConferenceAndHeldSingleButtons ); |
331 SetTouchPaneButtons( EPhoneConferenceAndHeldSingleButtons ); |
332 |
332 |
333 TransitionHandlerL().EndUiUpdate(); |
333 EndUiUpdate(); |
334 } |
334 } |
335 |
335 |
336 |
336 |
337 // ----------------------------------------------------------- |
337 // ----------------------------------------------------------- |
338 // CPhoneConferenceAndSingle::HandleHeldConferenceL |
338 // CPhoneConferenceAndSingle::HandleHeldConferenceL |
357 CCoeEnv::Static() ); |
357 CCoeEnv::Static() ); |
358 callHeaderParam.SetLabelText( labelText ); |
358 callHeaderParam.SetLabelText( labelText ); |
359 |
359 |
360 iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateMaxConfMemberFlag ); |
360 iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateMaxConfMemberFlag ); |
361 |
361 |
362 TransitionHandlerL().BeginUiUpdateLC(); |
362 BeginUiUpdateLC(); |
363 |
363 |
364 iViewCommandHandle->ExecuteCommandL( |
364 iViewCommandHandle->ExecuteCommandL( |
365 EPhoneViewUpdateBubble, KConferenceCallId, &callHeaderParam ); |
365 EPhoneViewUpdateBubble, KConferenceCallId, &callHeaderParam ); |
366 |
366 |
367 SetTouchPaneButtons( EPhoneConferenceAndSingleButtons ); |
367 SetTouchPaneButtons( EPhoneConferenceAndSingleButtons ); |
368 TransitionHandlerL().EndUiUpdate(); |
368 EndUiUpdate(); |
369 } |
369 } |
370 |
370 |
371 // ----------------------------------------------------------- |
371 // ----------------------------------------------------------- |
372 // CPhoneConferenceAndSingle::HandleConnectedL |
372 // CPhoneConferenceAndSingle::HandleConnectedL |
373 // ----------------------------------------------------------- |
373 // ----------------------------------------------------------- |
418 // |
418 // |
419 void CPhoneConferenceAndSingle::HandleAddedConferenceMemberL( TInt aCallId ) |
419 void CPhoneConferenceAndSingle::HandleAddedConferenceMemberL( TInt aCallId ) |
420 { |
420 { |
421 __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndSingle::HandleAddedConferenceMemberL"); |
421 __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndSingle::HandleAddedConferenceMemberL"); |
422 |
422 |
423 TransitionHandlerL().BeginUiUpdateLC(); |
423 BeginUiUpdateLC(); |
424 |
424 |
425 // Update conference bubble |
425 // Update conference bubble |
426 iViewCommandHandle->ExecuteCommandL( EPhoneViewAddToConference ); |
426 iViewCommandHandle->ExecuteCommandL( EPhoneViewAddToConference ); |
427 |
427 |
428 UpdateConferenceSecurityStatusL( aCallId ); |
428 UpdateConferenceSecurityStatusL( aCallId ); |
429 |
429 |
430 SetTouchPaneButtons( EPhoneConferenceButtons ); |
430 SetTouchPaneButtons( EPhoneConferenceButtons ); |
431 SetTouchPaneButtonEnabled( EPhoneInCallCmdPrivate ); |
431 SetTouchPaneButtonEnabled( EPhoneInCallCmdPrivate ); |
432 |
432 |
433 TransitionHandlerL().EndUiUpdate(); |
433 EndUiUpdate(); |
434 |
434 |
435 TPhoneCmdParamBoolean conferenceAndSingleFlag; |
435 TPhoneCmdParamBoolean conferenceAndSingleFlag; |
436 conferenceAndSingleFlag.SetBoolean( EFalse ); |
436 conferenceAndSingleFlag.SetBoolean( EFalse ); |
437 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetConferenceAndSingleFlag, |
437 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetConferenceAndSingleFlag, |
438 &conferenceAndSingleFlag ); |
438 &conferenceAndSingleFlag ); |
458 // |
458 // |
459 void CPhoneConferenceAndSingle::HandleIncomingL( TInt aCallId ) |
459 void CPhoneConferenceAndSingle::HandleIncomingL( TInt aCallId ) |
460 { |
460 { |
461 __LOGMETHODSTARTEND( EPhoneUIStates, |
461 __LOGMETHODSTARTEND( EPhoneUIStates, |
462 "CPhoneConferenceAndSingle::HandleIncomingL"); |
462 "CPhoneConferenceAndSingle::HandleIncomingL"); |
463 TransitionHandlerL().IncomingCallUiUpdateLC(); |
463 IsNumberEntryUsedL() ? |
|
464 BeginTransEffectLC( ECallUiAppear ) : |
|
465 BeginTransEffectLC( ENumberEntryOpen ); |
|
466 BeginUiUpdateLC(); |
464 |
467 |
465 // Hide the number entry if it exists |
468 // Hide the number entry if it exists |
466 if ( IsNumberEntryUsedL() ) |
469 if ( IsNumberEntryUsedL() ) |
467 { |
470 { |
468 SetNumberEntryVisibilityL( EFalse ); |
471 SetNumberEntryVisibilityL( EFalse ); |
469 } |
472 } |
470 |
473 |
471 // Get allow waiting call header param value. |
|
472 TPhoneCmdParamBoolean dialerParam; |
474 TPhoneCmdParamBoolean dialerParam; |
473 dialerParam.SetBoolean( ETrue ); |
475 dialerParam.SetBoolean( ETrue ); |
|
476 |
|
477 // Get allow waiting call header param value. |
474 AllowShowingOfWaitingCallHeaderL( dialerParam ); |
478 AllowShowingOfWaitingCallHeaderL( dialerParam ); |
475 |
479 |
476 // Close conference list |
480 // Close conference list |
477 TPhoneCmdParamBoolean booleanParam; |
481 TPhoneCmdParamBoolean booleanParam; |
478 booleanParam.SetBoolean( EFalse ); |
482 booleanParam.SetBoolean( EFalse ); |
483 |
487 |
484 // Set touch controls |
488 // Set touch controls |
485 SetTouchPaneButtonDisabled( EPhoneCallComingCmdAnswer ); |
489 SetTouchPaneButtonDisabled( EPhoneCallComingCmdAnswer ); |
486 |
490 |
487 SetTouchPaneButtons( EPhoneWaitingCallButtons ); |
491 SetTouchPaneButtons( EPhoneWaitingCallButtons ); |
488 |
492 |
|
493 // Display incoming call |
489 DisplayIncomingCallL( aCallId, dialerParam ); |
494 DisplayIncomingCallL( aCallId, dialerParam ); |
490 TransitionHandlerL().EndUiUpdateAndEffect(); |
495 |
491 |
496 EndUiUpdate(); |
|
497 EndTransEffect(); |
492 TPhoneCmdParamBoolean conferenceAndSingleFlag; |
498 TPhoneCmdParamBoolean conferenceAndSingleFlag; |
493 conferenceAndSingleFlag.SetBoolean( EFalse ); |
499 conferenceAndSingleFlag.SetBoolean( EFalse ); |
494 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetConferenceAndSingleFlag, |
500 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetConferenceAndSingleFlag, |
495 &conferenceAndSingleFlag ); |
501 &conferenceAndSingleFlag ); |
496 |
502 |
|
503 // Go to Conference And Single And Waiting state |
497 UpdateCbaL( EPhoneCallHandlingCallWaitingCBA ); |
504 UpdateCbaL( EPhoneCallHandlingCallWaitingCBA ); |
498 iStateMachine->ChangeState( EPhoneStateConferenceAndSingleAndWaiting ); |
505 iStateMachine->ChangeState( EPhoneStateConferenceAndSingleAndWaiting ); |
499 } |
506 } |
500 |
507 |
501 // ----------------------------------------------------------- |
508 // ----------------------------------------------------------- |
502 // CPhoneConferenceAndSingle::HandleIdleL |
509 // CPhoneConferenceAndSingle::HandleIdleL |
503 // ----------------------------------------------------------- |
510 // ----------------------------------------------------------- |
526 iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateMaxConfMemberFlag ); |
533 iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateMaxConfMemberFlag ); |
527 } |
534 } |
528 else |
535 else |
529 { |
536 { |
530 // Remove call |
537 // Remove call |
531 TransitionHandlerL().BeginUiUpdateLC(); |
538 BeginUiUpdateLC(); |
532 iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId ); |
539 iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId ); |
533 |
540 |
534 TPhoneCmdParamBoolean conferenceAndSingleFlag; |
541 TPhoneCmdParamBoolean conferenceAndSingleFlag; |
535 conferenceAndSingleFlag.SetBoolean( EFalse ); |
542 conferenceAndSingleFlag.SetBoolean( EFalse ); |
536 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetConferenceAndSingleFlag, |
543 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetConferenceAndSingleFlag, |