Fix for Call sate not set properly when there is 1 waiting and 1 active call and...
[apps/osp/Call.git] / src / CallActiveCallForm.cpp
index e7c1274..6ee1eb3 100644 (file)
@@ -228,11 +228,12 @@ ActiveCallForm::ShowDTMFKeypad(void)
                }
        }
        __pDTMFKeypad->SetShowState(true);
+       EditField* pTextBox = static_cast<EditField*>(__pDTMFKeypad->GetControl(IDC_TEXTBOX));
        if(__DtmfString.IsEmpty() == false)
        {
-               EditField* pTextBox = static_cast<EditField*>(__pDTMFKeypad->GetControl(IDC_TEXTBOX));
                pTextBox->SetText(__DtmfString);
        }
+       pTextBox->SetFocus();
        __pDTMFKeypad->Draw(true);
        __pDTMFKeypad->Show();
 }
@@ -880,7 +881,7 @@ ActiveCallForm::SetTextToDTMFTextField(const String& dtmfStr)
 
                pTextBox->InsertTextAtCursorPosition(dtmfStr);
                //pTextBox->AppendText(dtmfStr);
-               pTextBox->SetFocus();
+       //      pTextBox->SetFocus();
                pTextBox->Invalidate(true);
        }
 }
@@ -968,9 +969,9 @@ ActiveCallForm::OnSceneActivatedN(const SceneId& previousSceneId, const SceneId&
                        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;
@@ -984,7 +985,8 @@ ActiveCallForm::OnSceneActivatedN(const SceneId& previousSceneId, const SceneId&
                *__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;
@@ -1034,7 +1036,8 @@ ActiveCallForm::OnSceneActivatedN(const SceneId& previousSceneId, const SceneId&
 
 
                //show call active time using Timer
-               __activeCallStartTime = __pActiveCallInfo->GetCallConnectTime();
+               //__activeCallStartTime = __pActiveCallInfo->GetCallConnectTime();
+               __activeCallStartTime = __pActiveCallInfo->GetDurationTime();
                ShowTimerInfo(IDC_CALLER1_TIME_LABEL, __pActiveCallInfo->IsOnHold(),__activeCallStartTime);
        }
        break;
@@ -1403,7 +1406,8 @@ ActiveCallForm::UpdateMultipleCallScreen(Tizen::Base::Collection::IListT<AppCall
                                }
                        }
                        //show call active time using Timer
-                       __activeCallStartTime = __pActiveCallInfo->GetCallConnectTime();
+                       //__activeCallStartTime = __pActiveCallInfo->GetCallConnectTime();
+                       __activeCallStartTime = __pActiveCallInfo->GetDurationTime();
                        ShowTimerInfo(IDC_CALLER1_TIME_LABEL,false,__activeCallStartTime);
                }
                else
@@ -1729,7 +1733,9 @@ ActiveCallForm::ShowTimerInfo(const String& timerLblName, bool isOnHold, long lo
                        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));