__pActiveCallInfo = null;
__pHeldCallInfo = null;
__isSwapInProgress = false;
- __pAddressbook == null;
+ __pAddressbook = null;
}
ActiveCallForm::~ActiveCallForm(void)
{
//in Portrait mode it is hidden beneath DTMF Keypad.
SetShowStateOnKeypad(false);
+ DestroyMoreOptionsMenuList();
}
if(__pDTMFKeypad->GetShowState() == true)
{
pHoldBtn->SetActionId(cmdId);
pHoldBtn->SetNormalBitmap(Point(0, 0),*normalImg);
pHoldBtn->SetPressedBitmap(Point(0, 0),*pressImg);
+ pHoldBtn->Invalidate(true);
}
if (pHoldLbl)
{
{
//hide only in portrait mode.
SetShowStateOnKeypad(false);
+ DestroyMoreOptionsMenuList();
}
//Hide the hold button as it goes behind DTMF keypad
SetHoldButtonShowState(false);
activeContactNo.Append(AppUtility::GetResourceString(IDS_NUMBER_UNKNOWN));
}
ShowPersonDetails(activeContactNo, IDC_NUMBER1_LABEL, IDC_CALLER1_LABEL, false,__pActiveCallInfo);
-
//show call active time using Timer
- __activeCallStartTime = pCall->GetCallConnectTime();
+ //__activeCallStartTime = pCall->GetCallConnectTime();
+ __activeCallStartTime = pCall->GetDurationTime();
ShowTimerInfo(IDC_CALLER1_TIME_LABEL, pCall->IsOnHold(), __activeCallStartTime);
}
break;
*__pActiveCallInfo = *pCall;
//show call active time using Timer
- __activeCallStartTime = pCall->GetCallConnectTime();
+ //__activeCallStartTime = pCall->GetCallConnectTime();
+ __activeCallStartTime = pCall->GetDurationTime();
ShowTimerInfo(IDC_CALLER1_TIME_LABEL, pCall->IsOnHold(), __activeCallStartTime);
}
break;
__pCallButtonsPanel->EnableAddCallButton(true);
}
+
+ //bring button on top
+ __pCallButtonsPanel->SetButtonPosition();
+
+
//show call active time using Timer
- __activeCallStartTime = __pActiveCallInfo->GetCallConnectTime();
+ //__activeCallStartTime = __pActiveCallInfo->GetCallConnectTime();
+ __activeCallStartTime = __pActiveCallInfo->GetDurationTime();
ShowTimerInfo(IDC_CALLER1_TIME_LABEL, __pActiveCallInfo->IsOnHold(),__activeCallStartTime);
}
break;
pArgs = null;
}
+ //update position of call buttons panel
+ Label* pKeysBgLbl = static_cast<Label*>(GetControl(IDC_KEY_BG_LABEL, true));
+ __pCallButtonsPanel->SetBounds(pKeysBgLbl->GetBounds());
+
CallApp* pCallApp = static_cast<CallApp*>(CallApp::GetInstance());
pCallApp->SetTopMostWindow(false);
}
ActiveCallForm::OnSceneDeactivated(const SceneId& currentSceneId, const SceneId& nextSceneId)
{
RemoveOrientationEventListener(*this);
- if (__pCallButtonsPanel != null)
- {
- // RemoveControl(__pCallButtonsPanel);
- __pCallButtonsPanel = null;
- }
if (__pActiveCallTimer != null)
{
__pActiveCallTimer->Cancel();
switch (__formType)
{
- case FORMTYPE_EMERGENCYOUTGOINGCALL:
- {
- }
- break;
-
case FORMTYPE_OUTGOINGCALL:
case FORMTYPE_ACTIVECALL:
{
{
IListT<AppCallInfo>* pCallsList = __pCallPresentor->GetCallListN();
- int listCount = pCallsList->GetCount();
- for(int index = 0; index < listCount; index++)
+ if(pCallsList != null)
{
- AppCallInfo callInfo;
- Contact* pContact;
- pCallsList->GetAt(index, callInfo);
- if(__pActiveCallInfo == null)
- {
- __pActiveCallInfo = new (std::nothrow) AppCallInfo();
- }
- *__pActiveCallInfo = callInfo;
- String contactNumber;
- contactNumber.Append(__pActiveCallInfo->GetContactNumber());
- pContact = __pCallPresentor->GetContactN(__pActiveCallInfo->GetContactNumber());
- if(pContact == null)
+ int listCount = pCallsList->GetCount();
+ for(int index = 0; index < listCount; index++)
{
- __pActiveCallInfo->ResetContactNumber(null);
- __pActiveCallInfo->ResetContactInfo(null);
+ AppCallInfo callInfo;
+ Contact* pContact;
+ pCallsList->GetAt(index, callInfo);
+ if(__pActiveCallInfo == null)
+ {
+ __pActiveCallInfo = new (std::nothrow) AppCallInfo();
+ }
+ *__pActiveCallInfo = callInfo;
+ String contactNumber;
+ contactNumber.Append(__pActiveCallInfo->GetContactNumber());
+ pContact = __pCallPresentor->GetContactN(__pActiveCallInfo->GetContactNumber());
+ if(pContact == null)
+ {
+ __pActiveCallInfo->ResetContactNumber(null);
+ __pActiveCallInfo->ResetContactInfo(null);
+
+ }
+ else
+ {
+ __pActiveCallInfo->SetContactNumber(contactNumber);
+ __pActiveCallInfo->SetContactInfo(*pContact);
+ }
+ if(pContact != null)
+ {
+ delete pContact;
+ pContact = null;
+ }
+ if(callInfo.IsConferenceCall() == true)
+ {
+ continue;
+ }
+ if(callInfo.IsOnHold() == false)
+ {
+ ShowPersonDetails(contactNumber, IDC_NUMBER1_LABEL, IDC_CALLER1_LABEL, false,__pActiveCallInfo);
+ }
+ else
+ {
+ ShowPersonDetails(contactNumber, IDC_NUMBER2_LABEL, IDC_CALLER2_LABEL, true,__pActiveCallInfo);
+ }
- }
- else
- {
- __pActiveCallInfo->SetContactNumber(contactNumber);
- __pActiveCallInfo->SetContactInfo(*pContact);
- }
- if(pContact != null)
- {
- delete pContact;
- pContact = null;
- }
- if(callInfo.IsOnHold() == false)
- {
- ShowPersonDetails(contactNumber, IDC_NUMBER1_LABEL, IDC_CALLER1_LABEL, false,__pActiveCallInfo);
- }
- else
- {
- ShowPersonDetails(contactNumber, IDC_NUMBER2_LABEL, IDC_CALLER2_LABEL, true,__pActiveCallInfo);
}
- }
- if(pCallsList != null)
- {
delete pCallsList;
pCallsList = null;
}
- //pCallsList = __pCallPresentor->GetCallListN();
- //update calls state
- //UpdateMultipleCallScreen(*pCallsList);
- //delete pCallsList;
- //pCallsList = null;
- }
- break;
-
- case FORMTYPE_ACTIVECONFCALL:
- {
- int participantsCount = __pActiveCallInfo->GetCallerListCount();
- IListT<AppCallInfo>* pParticipantListCallHandles = __pActiveCallInfo->GetCallerList();
- for(int listCount = 0; listCount < participantsCount; listCount++)
- {
-
- }
-
}
break;
-
default:
break;
}
-
-
-
-
AppLog("Exit");
}
}
}
//show call active time using Timer
- __activeCallStartTime = __pActiveCallInfo->GetCallConnectTime();
+ //__activeCallStartTime = __pActiveCallInfo->GetCallConnectTime();
+ __activeCallStartTime = __pActiveCallInfo->GetDurationTime();
ShowTimerInfo(IDC_CALLER1_TIME_LABEL,false,__activeCallStartTime);
}
else
SetHoldButtonStatus(true);
//current system time
long long currTime = 0;
- SystemTime::GetTicks(currTime);
+ //SystemTime::GetTicks(currTime);
+ CallApp* pPhoneApp = static_cast<CallApp*>(CallApp::GetInstance());
+ currTime = pPhoneApp->GetCallAppTicks();
//Set call duration
TimeSpan diffSpan(abs(startTime - currTime));