diff --git a/Telegram/Resources/qrc/telegram/sounds.qrc b/Telegram/Resources/qrc/telegram/sounds.qrc index d9f7cf8b5a..1ffc48b052 100644 --- a/Telegram/Resources/qrc/telegram/sounds.qrc +++ b/Telegram/Resources/qrc/telegram/sounds.qrc @@ -10,5 +10,6 @@ ../../sounds/group_call_connect.mp3 ../../sounds/group_call_end.mp3 ../../sounds/group_call_allowed.mp3 + ../../sounds/group_call_recording_start.mp3 diff --git a/Telegram/Resources/sounds/group_call_recording_start.mp3 b/Telegram/Resources/sounds/group_call_recording_start.mp3 new file mode 100644 index 0000000000..0060e82c37 Binary files /dev/null and b/Telegram/Resources/sounds/group_call_recording_start.mp3 differ diff --git a/Telegram/SourceFiles/calls/calls_instance.cpp b/Telegram/SourceFiles/calls/calls_instance.cpp index d79a317018..a04db8bdb7 100644 --- a/Telegram/SourceFiles/calls/calls_instance.cpp +++ b/Telegram/SourceFiles/calls/calls_instance.cpp @@ -164,6 +164,8 @@ void Instance::Delegate::groupCallPlaySound(GroupCallSound sound) { case GroupCallSound::Ended: return "group_call_end"; case GroupCallSound::AllowedToSpeak: return "group_call_allowed"; case GroupCallSound::Connecting: return "group_call_connect"; + case GroupCallSound::RecordingStarted: + return "group_call_recording_start"; } Unexpected("GroupCallSound in Instance::groupCallPlaySound."); }()); diff --git a/Telegram/SourceFiles/calls/group/calls_group_call.cpp b/Telegram/SourceFiles/calls/group/calls_group_call.cpp index 8663c534c3..6714d32fac 100644 --- a/Telegram/SourceFiles/calls/group/calls_group_call.cpp +++ b/Telegram/SourceFiles/calls/group/calls_group_call.cpp @@ -2685,6 +2685,10 @@ void GroupCall::emitShareScreenError(Error error) { _errors.fire_copy(error); } +void GroupCall::playSoundRecordingStarted() const { + _delegate->groupCallPlaySound(Delegate::GroupCallSound::RecordingStarted); +} + void GroupCall::setupOutgoingVideo() { using Webrtc::VideoState; diff --git a/Telegram/SourceFiles/calls/group/calls_group_call.h b/Telegram/SourceFiles/calls/group/calls_group_call.h index e727173cd3..a78d3ab258 100644 --- a/Telegram/SourceFiles/calls/group/calls_group_call.h +++ b/Telegram/SourceFiles/calls/group/calls_group_call.h @@ -205,6 +205,7 @@ public: Connecting, AllowedToSpeak, Ended, + RecordingStarted, }; virtual void groupCallPlaySound(GroupCallSound sound) = 0; virtual auto groupCallGetVideoCapture(const QString &deviceId) @@ -283,6 +284,7 @@ public: const QString &title, bool video, bool videoPortrait); + void playSoundRecordingStarted() const; [[nodiscard]] bool recordingStoppedByMe() const { return _recordingStoppedByMe; } diff --git a/Telegram/SourceFiles/calls/group/calls_group_panel.cpp b/Telegram/SourceFiles/calls/group/calls_group_panel.cpp index 3a40c36f49..f3d2c524ed 100644 --- a/Telegram/SourceFiles/calls/group/calls_group_panel.cpp +++ b/Telegram/SourceFiles/calls/group/calls_group_panel.cpp @@ -1175,6 +1175,7 @@ void Panel::subscribeToChanges(not_null real) { const auto isVideo = real->recordVideo(); if (recorded) { *startedAsVideo = isVideo; + _call->playSoundRecordingStarted(); } validateRecordingMark(recorded); uiShow()->showToast((recorded