diff --git a/dialer/package/contents/ui/main.qml b/dialer/package/contents/ui/main.qml index 9ec510b0..98059514 100644 --- a/dialer/package/contents/ui/main.qml +++ b/dialer/package/contents/ui/main.qml @@ -56,7 +56,8 @@ ApplicationWindow { root.visible = true; //Was STATUS_INCOMING now is STATUS_DISCONNECTED: Missed call! } else if (status == 7 && previousStatus == 5) { - dialerUtils.notifyMissedCall(); + var prettyDate = Qt.formatTime(voiceCallmanager.activeVoiceCall.startedAt, Qt.locale().timeFormat(Locale.ShortFormat)); + dialerUtils.notifyMissedCall(voiceCallmanager.activeVoiceCall.lineId, i18n("%1 called at %2", voiceCallmanager.activeVoiceCall.lineId, prettyDate)); root.visible = wasVisible; insertCallInHistory(voiceCallmanager.activeVoiceCall.lineId, 0, 0); } else if (status == 7) { diff --git a/dialer/src/dialerutils.cpp b/dialer/src/dialerutils.cpp index 0b14e04a..1d4b25c9 100644 --- a/dialer/src/dialerutils.cpp +++ b/dialer/src/dialerutils.cpp @@ -32,7 +32,7 @@ DialerUtils::~DialerUtils() { } -void DialerUtils::notifyMissedCall() +void DialerUtils::notifyMissedCall(const QString &caller, const QString &description) { qWarning() << "Missed Call."; @@ -42,7 +42,13 @@ void DialerUtils::notifyMissedCall() } m_callsNotification->setComponentName("plasma_dialer"); m_callsNotification->setIconName("call-start"); - m_callsNotification->setTitle(i18np("One call missed", "%1 calls missed", m_missedCalls)); + if (m_missedCalls == 1) { + m_callsNotification->setTitle(i18n("Missed call from %1", caller)); + m_callsNotification->setText(description); + } else { + m_callsNotification->setTitle(i18n("%1 calls missed", m_missedCalls)); + m_callsNotification->setText(i18n("Last call: %1", description)); + } QStringList actions; actions.append(i18n("View")); diff --git a/dialer/src/dialerutils.h b/dialer/src/dialerutils.h index dde482b6..53ae5855 100644 --- a/dialer/src/dialerutils.h +++ b/dialer/src/dialerutils.h @@ -31,7 +31,7 @@ public: DialerUtils(QObject *parent = 0); virtual ~DialerUtils(); - Q_INVOKABLE void notifyMissedCall(); + Q_INVOKABLE void notifyMissedCall(const QString &caller, const QString &description); Q_INVOKABLE void resetMissedCalls(); Q_SIGNALS: diff --git a/dialer/src/plasma_dialer.notifyrc b/dialer/src/plasma_dialer.notifyrc index c1c51e4b..14865a2e 100644 --- a/dialer/src/plasma_dialer.notifyrc +++ b/dialer/src/plasma_dialer.notifyrc @@ -1,6 +1,6 @@ [Global] IconName=call-start -Comment=Plasma Phone Dialer +Comment=Phone [Event/callMissed] Name=Missed Call