Commit 8b1a1300 authored by Martin Klapetek's avatar Martin Klapetek

[dialer] Make the call direction property actually work

parent 302a68ea
......@@ -48,7 +48,7 @@ ApplicationWindow {
root.visible = true;
}
onCallEnded: {
insertCallInHistory(callContactNumber, callDuration, incomingCall ? 1 : 2);
insertCallInHistory(callContactNumber, callDuration, isIncomingCall ? 1 : 2);
}
}
......
......@@ -99,6 +99,10 @@ void CallManager::onCallStateChanged(Tp::CallState state)
d->dialerUtils->setCallContactNumber(d->callChannel->targetContact()->id());
}
if (d->callChannel->isValid()) {
d->dialerUtils->setIsIncomingCall(!d->callChannel->isRequested());
}
switch (state) {
case Tp::CallStatePendingInitiator:
Q_ASSERT(d->callChannel->isRequested());
......
......@@ -122,10 +122,23 @@ void DialerUtils::setCallContactNumber(const QString &contactNumber)
}
}
bool DialerUtils::isIncomingCall() const
{
return m_isIncomingCall;
}
void DialerUtils::setIsIncomingCall(bool isIncomingCall)
{
if (m_isIncomingCall != isIncomingCall) {
m_isIncomingCall = isIncomingCall;
Q_EMIT isIncomingCallChanged();
}
}
void DialerUtils::emitCallEnded()
{
qDebug() << "Call ended:" << m_callContactNumber << m_callDuration;
Q_EMIT callEnded(m_callContactNumber, m_callDuration, true);
Q_EMIT callEnded(m_callContactNumber, m_callDuration, m_isIncomingCall);
m_callDuration = 0;
m_callContactNumber = QString();
m_callContactAlias = QString();
......
......@@ -32,6 +32,7 @@ class DialerUtils : public QObject
Q_PROPERTY(uint callDuration READ callDuration NOTIFY callDurationChanged);
Q_PROPERTY(QString callContactAlias READ callContactAlias NOTIFY callContactAliasChanged);
Q_PROPERTY(QString callContactNumber READ callContactNumber NOTIFY callContactNumberChanged);
Q_PROPERTY(bool isIncomingCall READ isIncomingCall NOTIFY isIncomingCallChanged);
public:
......@@ -50,6 +51,9 @@ public:
QString callContactNumber() const;
void setCallContactNumber(const QString &contactNumber);
bool isIncomingCall() const;
void setIsIncomingCall(bool isIncomingCall);
void emitCallEnded();
Q_INVOKABLE void resetMissedCalls();
......@@ -61,10 +65,11 @@ Q_SIGNALS:
void callDurationChanged();
void callContactAliasChanged();
void callContactNumberChanged();
void isIncomingCallChanged();
void acceptCall();
void rejectCall();
void hangUp();
void callEnded(const QString &callContactNumber, uint callDuration, bool incomingCall);
void callEnded(const QString &callContactNumber, uint callDuration, bool isIncomingCall);
private:
QPointer <KNotification> m_callsNotification;
......@@ -75,6 +80,7 @@ private:
QString m_callContactAlias;
QString m_callContactNumber;
uint m_callDuration;
bool m_isIncomingCall;
};
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment