, public Tizen::Ui::IOrientationEventListener
, public Tizen::Social::IAddressbookChangeEventListener
, public Tizen::Ui::IPropagatedKeyEventListener
+ , public Tizen::System::ISettingEventListener
{
public:
ActiveCallForm(FormType formType);
virtual void OnForeground(void);
virtual void OnBackground(void){};
virtual void OnScreenOff(void){};
+ //ISettings Event Listener
+ virtual void OnSettingChanged(Tizen::Base::String& key);
private:
// Create the call buttons panel and add to form
, public Tizen::Ui::Controls::ITableViewItemProvider
, public Tizen::Ui::IOrientationEventListener
, public Tizen::Social::IAddressbookChangeEventListener
+ , public Tizen::System::ISettingEventListener
{
public:
ConfCallerListForm(void);
virtual void UpdateItem(int itemIndex, Tizen::Ui::Controls::TableViewItem* pItem);
virtual int GetDefaultItemHeight(void);
+ virtual void OnSettingChanged(Tizen::Base::String& key);
+
private:
// Add the action listener for the buttons
void AddActionListener(const Tizen::Base::String& keyName, CommandIds cmdId);
extern const wchar_t* IDS_MESSAGE_SENDING_FAILED;
extern const wchar_t* IDS_LOW_MEMORY_MSG;
extern const wchar_t* IDS_LOW_MEMORY_MSG_TITLE;
+extern const wchar_t* IDS_SERVICE_UNAVAILABLE;
+extern const wchar_t* IDS_CALL_BARRED;
//Panel
extern const wchar_t* PANEL_DIALER;
extern const wchar_t* PANEL_LOGS;
ERROR_BARRING_PWD_TOO_LONG,
ERROR_FLIGHT_MODE_SET,
ERROR_GENERAL,
+ ERROR_SERVICE_UNAVAILABLE,
ERROR_USSD_NUMBER,
+ ERROR_CALL_BARRED
};
enum DialerRequestType
<text id="IDS_MESSAGE_SENDING_FAILED">Message Sending failed</text>
<text id="IDS_LOW_MEMORY_MSG_TITLE">Low Memory</text>
<text id="IDS_LOW_MEMORY_MSG">Memory Low, Delete some data</text>
+ <text id="IDS_SERVICE_UNAVAILABLE">Network Unavailable</text>
+ <text id="IDS_CALL_BARRED">Call Barred</text>
</string_table>
//set itself as listener
__pCallPresentor->SetTelEventListener(this);
AddOrientationEventListener(*this);
+ Tizen::System::SettingInfo::AddSettingEventListener(*this);
CallApp* pPhoneApp = static_cast<CallApp*>(CallApp::GetInstance());
pPhoneApp->AddAppStateChangeListener(*this);
{
__pAddressbook->SetAddressbookChangeEventListener(null);
}
+
+ Tizen::System::SettingInfo::RemoveSettingEventListener(*this);
}
void
__pCallPresentor->OnAppForeground();
}
+void
+ActiveCallForm::OnSettingChanged(Tizen::Base::String& key)
+{
+ if(key == L"http://tizen.org/setting/contacts.order.firstname")
+ {
+ IListT<AppCallInfo>* pCallsList = __pCallPresentor->GetCallListN();
+ if(pCallsList != null)
+ {
+ int listCount = pCallsList->GetCount();
+ for(int index = 0; index < listCount; index++)
+ {
+ 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);
+ }
+
+ }
+
+ delete pCallsList;
+ pCallsList = null;
+ }
+ }
+
+}
+
+
bool
ActiveCallForm::OnKeyPressed(Control& source, const KeyEventInfo& keyEventInfo)
{
{
AppLogDebug("Enter");
ActiveCallForm* pActiveCallForm = dynamic_cast<ActiveCallForm*>(this);
- if(pActiveCallForm != null)
+ switch (__formType)
+ {
+ case(FORMTYPE_ACTIVECALL):
+ case(FORMTYPE_ACTIVECONFCALL):
+ case(FORMTYPE_MULTIPLECALLS):
{
- pActiveCallForm->OnHoldTelephonyCallback(isHeld);
+ if(pActiveCallForm != null)
+ {
+ pActiveCallForm->OnHoldTelephonyCallback(isHeld);
+ }
+ }
+ break;
+
+ default:
+ break;
}
}
//set itself as listener
__pCallPresentor->SetTelEventListener(this);
__isCallSplit = false;
-
+ Tizen::System::SettingInfo::AddSettingEventListener(*this);
AppLogDebug("Enter");
//DisableAllControls();
{
__pAddressbook->SetAddressbookChangeEventListener(null);
}
+
+ Tizen::System::SettingInfo::RemoveSettingEventListener(*this);
}
result
return ;
}
+void
+ConfCallerListForm::OnSettingChanged(Tizen::Base::String& key)
+{
+ if(key == L"http://tizen.org/setting/contacts.order.firstname")
+ {
+ __pList->UpdateTableView();
+ }
+}
+
int
ConfCallerListForm::GetDefaultItemHeight(void)
{
}
break;
+ case ERROR_SERVICE_UNAVAILABLE:
+ {
+ msg.Append(AppUtility::GetResourceString(IDS_SERVICE_UNAVAILABLE));
+ }
+ break;
+
+ case ERROR_CALL_BARRED:
+ {
+ msg.Append(AppUtility::GetResourceString(IDS_SERVICE_UNAVAILABLE));
+ }
+ break;
+
case ERROR_GENERAL:
default:
{
if(__pCallPresentor->IsAppControlRunning() == false)
{
__pCallPresentor->RejectCall(__incomingCallHandle, true,*__pActiveContactNo);
- ArrayListT<AppCallInfo>* pCallList = static_cast<ArrayListT<AppCallInfo>*>(__pCallPresentor->GetCallListN());
+ /*ArrayListT<AppCallInfo>* pCallList = static_cast<ArrayListT<AppCallInfo>*>(__pCallPresentor->GetCallListN());
if(pCallList != null && pCallList->GetCount() > 0)
{
__pCallPresentor->HandleCallConnected(*pCallList);
}
- pCallList = null;
+ pCallList = null;*/
}
}
break;
if (isCallServiceAvailable == false)
{
- __pTelEventListener->HandleTelephonyError(ERROR_DIAL_FAILED);
+ __pTelEventListener->HandleTelephonyError(ERROR_SERVICE_UNAVAILABLE);
return ;
}
// check if GPRS number
void
SoundManager::ResumeAlert(String& contactRingTone)
{
+ AppLogDebug("Enter");
result res = E_FAILURE;
IntensityDurationVibrationPattern vibration;
vibration.duration = 3000;
{
return ERROR_NONE;
}
+ else if (res == TAPI_CAUSE_CALL_BARRED)
+ {
+ return ERROR_CALL_BARRED;
+ }
else
{
return ERROR_TAPI_ERROR;
}
else
{
- return E_FAILURE;
+ AppLogDebug("%d",res);
+ return res;
}
}
const wchar_t* IDS_MESSAGE_SENDING_FAILED = L"IDS_MESSAGE_SENDING_FAILED";
const wchar_t* IDS_LOW_MEMORY_MSG = L"IDS_LOW_MEMORY_MSG";
const wchar_t* IDS_LOW_MEMORY_MSG_TITLE = L"IDS_LOW_MEMORY_MSG_TITLE";
+const wchar_t* IDS_SERVICE_UNAVAILABLE = L"IDS_SERVICE_UNAVAILABLE";
+const wchar_t* IDS_CALL_BARRED = L"IDS_CALL_BARRED";
//Panel
const wchar_t* PANEL_DIALER = L"PanelDialer";
const wchar_t* PANEL_LOGS = L"PanelLogs";