diff --git a/dialer/package/contents/ui/Call/CallPage.qml b/dialer/package/contents/ui/Call/CallPage.qml index 417855e2..6f3c3fa4 100644 --- a/dialer/package/contents/ui/Call/CallPage.qml +++ b/dialer/package/contents/ui/Call/CallPage.qml @@ -108,7 +108,7 @@ Item { horizontalAlignment: Qt.AlignHCenter verticalAlignment: Qt.AlignVCenter font.pointSize: theme.defaultFont.pointSize * 2 - text: dialerUtils.callContactId + text: dialerUtils.callContactAlias } PlasmaComponents.Label { Layout.fillWidth: true diff --git a/dialer/src/call-manager.cpp b/dialer/src/call-manager.cpp index 1e290954..9e672b74 100644 --- a/dialer/src/call-manager.cpp +++ b/dialer/src/call-manager.cpp @@ -93,7 +93,8 @@ void CallManager::onCallStateChanged(Tp::CallState state) qDebug() << "new call state:" << state; if (d->callChannel->targetContact()) { - d->dialerUtils->setCallContactId(d->callChannel->targetContact()->alias()); + d->dialerUtils->setCallContactAlias(d->callChannel->targetContact()->alias()); + d->dialerUtils->setCallContactNumber(d->callChannel->targetContact()->id()); } switch (state) { diff --git a/dialer/src/dialerutils.cpp b/dialer/src/dialerutils.cpp index ebdb49a2..37b908aa 100644 --- a/dialer/src/dialerutils.cpp +++ b/dialer/src/dialerutils.cpp @@ -34,7 +34,7 @@ DialerUtils::DialerUtils(const Tp::AccountPtr &simAccount, QObject *parent) m_missedCalls(0), m_simAccount(simAccount), m_callDuration(0), - m_callContactId(QString()) + m_callContactAlias(QString()) { Tp::PendingReady *op = m_simAccount->becomeReady(Tp::Features() << Tp::Account::FeatureCore); @@ -96,16 +96,29 @@ void DialerUtils::setCallDuration(uint duration) Q_EMIT callDurationChanged(); } -QString DialerUtils::callContactId() const +QString DialerUtils::callContactAlias() const { - return m_callContactId; + return m_callContactAlias; } -void DialerUtils::setCallContactId(const QString &contactId) +void DialerUtils::setCallContactAlias(const QString &contactAlias) { - if (m_callContactId != contactId) { - m_callContactId = contactId; - Q_EMIT callContactIdChanged(); + if (m_callContactAlias != contactAlias) { + m_callContactAlias = contactAlias; + Q_EMIT callContactAliasChanged(); + } +} + +QString DialerUtils::callContactNumber() const +{ + return m_callContactNumber; +} + +void DialerUtils::setCallContactNumber(const QString &contactNumber) +{ + if (m_callContactNumber != contactNumber) { + m_callContactNumber = contactNumber; + Q_EMIT callContactNumberChanged(); } } diff --git a/dialer/src/dialerutils.h b/dialer/src/dialerutils.h index 598a1722..f797bb6c 100644 --- a/dialer/src/dialerutils.h +++ b/dialer/src/dialerutils.h @@ -30,7 +30,9 @@ class DialerUtils : public QObject Q_OBJECT Q_PROPERTY(QString callState READ callState NOTIFY callStateChanged); Q_PROPERTY(uint callDuration READ callDuration NOTIFY callDurationChanged); - Q_PROPERTY(QString callContactId READ callContactId NOTIFY callContactIdChanged); + Q_PROPERTY(QString callContactAlias READ callContactAlias NOTIFY callContactAliasChanged); + Q_PROPERTY(QString callContactNumber READ callContactNumber NOTIFY callContactNumberChanged); + public: DialerUtils(const Tp::AccountPtr &simAccount, QObject *parent = 0); @@ -42,8 +44,11 @@ public: uint callDuration() const; void setCallDuration(uint duration); - QString callContactId() const; - void setCallContactId(const QString &contactId); + QString callContactAlias() const; + void setCallContactAlias(const QString &contactAlias); + + QString callContactNumber() const; + void setCallContactNumber(const QString &contactNumber); Q_INVOKABLE void resetMissedCalls(); Q_INVOKABLE void dial(const QString &number); @@ -52,7 +57,8 @@ Q_SIGNALS: void missedCallsActionTriggered(); void callStateChanged(); void callDurationChanged(); - void callContactIdChanged(); + void callContactAliasChanged(); + void callContactNumberChanged(); void acceptCall(); void rejectCall(); void hangUp(); @@ -63,7 +69,8 @@ private: int m_missedCalls; QString m_callState; Tp::AccountPtr m_simAccount; - QString m_callContactId; + QString m_callContactAlias; + QString m_callContactNumber; uint m_callDuration; };