Browse Source

feat(call): add call end sound

Fix #4905
reviewable/pr5056/r2
Anthony Bilinski 7 years ago
parent
commit
65896e4501
No known key found for this signature in database
GPG Key ID: 2AA8E0DA1B31FB3C
  1. BIN
      audio/ToxEndCall.pcm
  2. 1
      res.qrc
  3. 5
      src/audio/audio.h
  4. 1
      src/widget/form/chatform.cpp
  5. 1
      src/widget/form/chatform.h
  6. 7
      src/widget/widget.cpp
  7. 1
      src/widget/widget.h

BIN
audio/ToxEndCall.pcm

Binary file not shown.

1
res.qrc

@ -9,6 +9,7 @@ @@ -9,6 +9,7 @@
<file>audio/notification.pcm</file>
<file>audio/ToxIncomingCall.pcm</file>
<file>audio/ToxOutgoingCall.pcm</file>
<file>audio/ToxEndCall.pcm</file>
<file>img/add.svg</file>
<file>img/avatar_mask.svg</file>
<file>img/contact.svg</file>

5
src/audio/audio.h

@ -40,7 +40,8 @@ public: @@ -40,7 +40,8 @@ public:
NewMessage,
Test,
IncomingCall,
OutgoingCall
OutgoingCall,
CallEnd
};
inline static QString getSound(Sound s)
@ -54,6 +55,8 @@ public: @@ -54,6 +55,8 @@ public:
return QStringLiteral(":/audio/ToxIncomingCall.pcm");
case Sound::OutgoingCall:
return QStringLiteral(":/audio/ToxOutgoingCall.pcm");
case Sound::CallEnd:
return QStringLiteral(":/audio/ToxEndCall.pcm");
}
assert(false);
return QString();

1
src/widget/form/chatform.cpp

@ -402,6 +402,7 @@ void ChatForm::onAvEnd(uint32_t friendId, bool error) @@ -402,6 +402,7 @@ void ChatForm::onAvEnd(uint32_t friendId, bool error)
}
emit stopNotification();
emit endCallNotification();
updateCallButtons();
stopCounter(error);
hideNetcam();

1
src/widget/form/chatform.h

@ -60,6 +60,7 @@ signals: @@ -60,6 +60,7 @@ signals:
void incomingNotification(uint32_t friendId);
void outgoingNotification();
void stopNotification();
void endCallNotification();
void rejectCall(uint32_t friendId);
void acceptCall(uint32_t friendId);

7
src/widget/widget.cpp

@ -955,6 +955,12 @@ void Widget::outgoingNotification() @@ -955,6 +955,12 @@ void Widget::outgoingNotification()
audio.playMono16Sound(Audio::getSound(Audio::Sound::OutgoingCall));
}
void Widget::onCallEnd()
{
Audio& audio = Audio::getInstance();
audio.playMono16Sound(Audio::getSound(Audio::Sound::CallEnd));
}
/**
* @brief Widget::onStopNotification Stop the notification sound.
*/
@ -997,6 +1003,7 @@ void Widget::addFriend(uint32_t friendId, const ToxPk& friendPk) @@ -997,6 +1003,7 @@ void Widget::addFriend(uint32_t friendId, const ToxPk& friendPk)
connect(friendForm, &ChatForm::incomingNotification, this, &Widget::incomingNotification);
connect(friendForm, &ChatForm::outgoingNotification, this, &Widget::outgoingNotification);
connect(friendForm, &ChatForm::stopNotification, this, &Widget::onStopNotification);
connect(friendForm, &ChatForm::endCallNotification, this, &Widget::onCallEnd);
connect(friendForm, &ChatForm::rejectCall, this, &Widget::onRejectCall);
connect(widget, &FriendWidget::newWindowOpened, this, &Widget::openNewDialog);

1
src/widget/widget.h

@ -218,6 +218,7 @@ private slots: @@ -218,6 +218,7 @@ private slots:
void groupInvitesClear();
void onDialogShown(GenericChatroomWidget* widget);
void outgoingNotification();
void onCallEnd();
void incomingNotification(uint32_t friendId);
void onRejectCall(uint32_t friendId);
void onStopNotification();

Loading…
Cancel
Save