From a96d96b3aa883c5ee5892e4ff94e3c539989c66a Mon Sep 17 00:00:00 2001 From: ouwou <26526779+ouwou@users.noreply.github.com> Date: Wed, 28 Sep 2022 22:10:36 -0400 Subject: basic mute/deafen --- src/abaddon.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'src/abaddon.cpp') diff --git a/src/abaddon.cpp b/src/abaddon.cpp index 3245ad4..678353c 100644 --- a/src/abaddon.cpp +++ b/src/abaddon.cpp @@ -18,6 +18,7 @@ #include "windows/profilewindow.hpp" #include "windows/pinnedwindow.hpp" #include "windows/threadswindow.hpp" +#include "windows/voicewindow.hpp" #include "startup.hpp" #ifdef WITH_LIBHANDY @@ -418,6 +419,25 @@ void Abaddon::DiscordOnThreadUpdate(const ThreadUpdateData &data) { #ifdef WITH_VOICE void Abaddon::OnVoiceConnected() { + auto *wnd = new VoiceWindow; + + wnd->signal_mute().connect([this](bool is_mute) { + m_discord.SetVoiceMuted(is_mute); + m_audio->SetCapture(!is_mute); + }); + + wnd->signal_deafen().connect([this](bool is_deaf) { + m_discord.SetVoiceDeafened(is_deaf); + m_audio->SetPlayback(!is_deaf); + }); + + wnd->show(); + wnd->signal_hide().connect([this, wnd]() { + m_discord.DisconnectFromVoice(); + delete wnd; + delete m_user_menu; + SetupUserMenu(); + }); } void Abaddon::OnVoiceDisconnected() { -- cgit v1.2.3