summaryrefslogtreecommitdiff
path: root/src/abaddon.cpp
diff options
context:
space:
mode:
authorouwou <26526779+ouwou@users.noreply.github.com>2023-06-30 20:43:08 -0400
committerouwou <26526779+ouwou@users.noreply.github.com>2023-06-30 20:43:08 -0400
commit3b206e11216b383fae0e860e0092f71301fd4425 (patch)
tree857c4fbd120ffe37bef5a108dcbe5e322a45ae14 /src/abaddon.cpp
parentec6f18ff1204889afd63f08f255d00ae3a1ef12b (diff)
downloadabaddon-portaudio-3b206e11216b383fae0e860e0092f71301fd4425.tar.gz
abaddon-portaudio-3b206e11216b383fae0e860e0092f71301fd4425.zip
remote auth impl. up to QR code display
Diffstat (limited to 'src/abaddon.cpp')
-rw-r--r--src/abaddon.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/abaddon.cpp b/src/abaddon.cpp
index 92cc494..545a3c2 100644
--- a/src/abaddon.cpp
+++ b/src/abaddon.cpp
@@ -21,6 +21,7 @@
#include "windows/voicewindow.hpp"
#include "startup.hpp"
#include "notifications/notifications.hpp"
+#include "remoteauth/remoteauthdialog.hpp"
#ifdef WITH_LIBHANDY
#include <handy.h>
@@ -267,6 +268,7 @@ int Abaddon::StartGTK() {
m_main_window->signal_action_connect().connect(sigc::mem_fun(*this, &Abaddon::ActionConnect));
m_main_window->signal_action_disconnect().connect(sigc::mem_fun(*this, &Abaddon::ActionDisconnect));
m_main_window->signal_action_set_token().connect(sigc::mem_fun(*this, &Abaddon::ActionSetToken));
+ m_main_window->signal_action_login_qr().connect(sigc::mem_fun(*this, &Abaddon::ActionLoginQR));
m_main_window->signal_action_reload_css().connect(sigc::mem_fun(*this, &Abaddon::ActionReloadCSS));
m_main_window->signal_action_set_status().connect(sigc::mem_fun(*this, &Abaddon::ActionSetStatus));
m_main_window->signal_action_add_recipient().connect(sigc::mem_fun(*this, &Abaddon::ActionAddRecipient));
@@ -834,6 +836,16 @@ void Abaddon::ActionSetToken() {
m_main_window->UpdateMenus();
}
+void Abaddon::ActionLoginQR() {
+ RemoteAuthDialog dlg(*m_main_window);
+ auto response = dlg.run();
+ if (response == Gtk::RESPONSE_OK) {
+ m_discord_token = dlg.GetToken();
+ m_main_window->UpdateComponents();
+ }
+ m_main_window->UpdateMenus();
+}
+
void Abaddon::ActionChannelOpened(Snowflake id, bool expand_to) {
if (!id.IsValid()) {
m_discord.SetReferringChannel(Snowflake::Invalid);
@@ -1142,6 +1154,7 @@ int main(int argc, char **argv) {
auto log_audio = spdlog::stdout_color_mt("audio");
auto log_voice = spdlog::stdout_color_mt("voice");
auto log_discord = spdlog::stdout_color_mt("discord");
+ auto log_ra = spdlog::stdout_color_mt("remote-auth");
Gtk::Main::init_gtkmm_internals(); // why???
return Abaddon::Get().StartGTK();