80 EXPORT_C void CPhoneSingleCall::ConstructL() |
80 EXPORT_C void CPhoneSingleCall::ConstructL() |
81 { |
81 { |
82 CPhoneGsmInCall::ConstructL(); |
82 CPhoneGsmInCall::ConstructL(); |
83 |
83 |
84 // Re-enable global notes |
84 // Re-enable global notes |
85 TPhoneCmdParamBoolean globalNotifierParam; |
85 EnableGlobalNotifiersL(); |
86 globalNotifierParam.SetBoolean( EFalse ); |
|
87 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled, |
|
88 &globalNotifierParam ); |
|
89 |
86 |
90 TPhoneCmdParamBoolean holdFlag; |
87 TPhoneCmdParamBoolean holdFlag; |
91 holdFlag.SetBoolean( EFalse ); |
88 holdFlag.SetBoolean( EFalse ); |
92 // Fetch active call's id from view |
89 // Fetch active call's id from view |
93 TPhoneCmdParamCallStateData callStateData; |
90 TPhoneCmdParamCallStateData callStateData; |
495 // |
492 // |
496 void CPhoneSingleCall::HandleIncomingL( TInt aCallId ) |
493 void CPhoneSingleCall::HandleIncomingL( TInt aCallId ) |
497 { |
494 { |
498 __LOGMETHODSTARTEND( EPhoneUIStates, |
495 __LOGMETHODSTARTEND( EPhoneUIStates, |
499 "CPhoneSingleCall::HandleIncomingL()"); |
496 "CPhoneSingleCall::HandleIncomingL()"); |
|
497 |
500 CPhonePubSubProxy::Instance()->ChangePropertyValue( |
498 CPhonePubSubProxy::Instance()->ChangePropertyValue( |
501 KPSUidScreenSaver, |
499 KPSUidScreenSaver, |
502 KScreenSaverAllowScreenSaver, |
500 KScreenSaverAllowScreenSaver, |
503 EPhoneScreensaverNotAllowed ); |
501 EPhoneScreensaverNotAllowed ); |
504 TransitionHandlerL().IncomingCallUiUpdateLC(); |
502 IsNumberEntryUsedL() ? |
|
503 BeginTransEffectLC( ECallUiAppear ) : |
|
504 BeginTransEffectLC( ENumberEntryOpen ); |
|
505 BeginUiUpdateLC(); |
505 |
506 |
506 // Hide the number entry if it exists |
507 // Hide the number entry if it exists |
507 if ( IsNumberEntryUsedL() ) |
508 if ( IsNumberEntryUsedL() ) |
508 { |
509 { |
509 SetNumberEntryVisibilityL( EFalse ); |
510 SetNumberEntryVisibilityL( EFalse ); |
510 } |
511 } |
511 |
512 |
512 // Get allow waiting call header param value. |
|
513 TPhoneCmdParamBoolean dialerParam; |
513 TPhoneCmdParamBoolean dialerParam; |
514 dialerParam.SetBoolean( ETrue ); |
514 dialerParam.SetBoolean( ETrue ); |
|
515 |
|
516 // Get allow waiting call header param value. |
515 AllowShowingOfWaitingCallHeaderL( dialerParam ); |
517 AllowShowingOfWaitingCallHeaderL( dialerParam ); |
516 |
518 |
517 // Close fast swap window if it's displayed |
519 // Close fast swap window if it's displayed |
518 EikonEnv()->DismissTaskList(); |
520 CEikonEnv::Static()->DismissTaskList(); |
519 |
521 |
520 // Show incoming call buttons |
522 // Show incoming call buttons |
521 SetTouchPaneButtons( EPhoneWaitingCallButtons ); |
523 SetTouchPaneButtons( EPhoneWaitingCallButtons ); |
522 |
524 |
|
525 // Display incoming call |
523 DisplayIncomingCallL( aCallId, dialerParam ); |
526 DisplayIncomingCallL( aCallId, dialerParam ); |
524 TransitionHandlerL().EndUiUpdateAndEffect(); |
527 |
525 |
528 EndUiUpdate(); |
|
529 EndTransEffect(); |
526 // This query is required to dismiss |
530 // This query is required to dismiss |
527 // Operation cannot be completed in waiting and single state |
531 // Operation cannot be completed in waiting and single state |
528 if ( iSwitchToVideoQuery ) |
532 if ( iSwitchToVideoQuery ) |
529 { |
533 { |
530 iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveQuery ); |
534 iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveQuery ); |
537 // CPhoneSingleCall::DisplayIncomingCallL |
541 // CPhoneSingleCall::DisplayIncomingCallL |
538 // ----------------------------------------------------------- |
542 // ----------------------------------------------------------- |
539 // |
543 // |
540 void CPhoneSingleCall::DisplayIncomingCallL( |
544 void CPhoneSingleCall::DisplayIncomingCallL( |
541 TInt aCallId, |
545 TInt aCallId, |
542 const TPhoneCmdParamBoolean /*aCommandParam*/ ) |
546 const TPhoneCmdParamBoolean aCommandParam ) |
543 { |
547 { |
544 __LOGMETHODSTARTEND( EPhoneUIStates, |
548 __LOGMETHODSTARTEND( EPhoneUIStates, |
545 "CPhoneSingleCall::DisplayIncomingCallL()"); |
549 "CPhoneSingleCall::DisplayIncomingCallL()"); |
546 // Close menu bar, if it is displayed |
550 // Close menu bar, if it is displayed |
547 iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose ); |
551 iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose ); |
555 iViewCommandHandle->ExecuteCommandL( EPhoneViewDisableKeyLockWithoutNote ); |
559 iViewCommandHandle->ExecuteCommandL( EPhoneViewDisableKeyLockWithoutNote ); |
556 } |
560 } |
557 |
561 |
558 // Indicate that the Phone needs to be sent to the background if |
562 // Indicate that the Phone needs to be sent to the background if |
559 // an application other than the top application is in the foreground |
563 // an application other than the top application is in the foreground |
560 SetNeedToReturnToForegroundAppStatusL( !TopAppIsDisplayedL() ); |
564 TPhoneCmdParamBoolean booleanParam; |
561 |
565 booleanParam.SetBoolean( !TopAppIsDisplayedL() ); |
|
566 iViewCommandHandle->ExecuteCommandL( |
|
567 EPhoneViewSetNeedToReturnToForegroundAppStatus, |
|
568 &booleanParam ); |
|
569 |
562 // Bring Phone app in the foreground |
570 // Bring Phone app in the foreground |
563 TPhoneCmdParamInteger uidParam; |
571 TPhoneCmdParamInteger uidParam; |
564 uidParam.SetInteger( KUidPhoneApplication.iUid ); |
572 uidParam.SetInteger( KUidPhoneApplication.iUid ); |
565 iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground, |
573 iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground, |
566 &uidParam ); |
574 &uidParam ); |