summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--res/res/hypesquadbravery.pngbin7427 -> 1131 bytes
-rw-r--r--src/abaddon.cpp11
-rw-r--r--src/abaddon.hpp3
-rw-r--r--src/discord/objects.cpp2
4 files changed, 15 insertions, 1 deletions
diff --git a/res/res/hypesquadbravery.png b/res/res/hypesquadbravery.png
index 0feaa04..3a1e818 100644
--- a/res/res/hypesquadbravery.png
+++ b/res/res/hypesquadbravery.png
Binary files differ
diff --git a/src/abaddon.cpp b/src/abaddon.cpp
index e30281f..5c6f136 100644
--- a/src/abaddon.cpp
+++ b/src/abaddon.cpp
@@ -286,6 +286,8 @@ int Abaddon::StartGTK() {
m_main_window->GetChatWindow()->signal_action_reaction_remove().connect(sigc::mem_fun(*this, &Abaddon::ActionReactionRemove));
ActionReloadCSS();
+ AttachCSSMonitor();
+
if (m_settings.GetSettings().HideToTray) {
m_tray = Gtk::StatusIcon::create("discord");
m_tray->signal_activate().connect(sigc::mem_fun(*this, &Abaddon::on_tray_click));
@@ -719,6 +721,15 @@ void Abaddon::LoadState() {
}
}
+void Abaddon::AttachCSSMonitor() {
+ const auto path = GetCSSPath("/" + GetSettings().MainCSS);
+ const auto file = Gio::File::create_for_path(path);
+ m_main_css_monitor = file->monitor_file();
+ m_main_css_monitor->signal_changed().connect([this](const auto &file, const auto &other_file, Gio::FileMonitorEvent event) {
+ ActionReloadCSS();
+ });
+}
+
void Abaddon::ManageHeapWindow(Gtk::Window *window) {
window->signal_hide().connect([this, window]() {
delete window;
diff --git a/src/abaddon.hpp b/src/abaddon.hpp
index 12f942a..5256cd5 100644
--- a/src/abaddon.hpp
+++ b/src/abaddon.hpp
@@ -129,6 +129,9 @@ protected:
void SaveState();
void LoadState();
+ void AttachCSSMonitor();
+ Glib::RefPtr<Gio::FileMonitor> m_main_css_monitor;
+
Snowflake m_shown_user_menu_id;
Snowflake m_shown_user_menu_guild_id;
diff --git a/src/discord/objects.cpp b/src/discord/objects.cpp
index c783a3e..86264cc 100644
--- a/src/discord/objects.cpp
+++ b/src/discord/objects.cpp
@@ -542,7 +542,7 @@ void from_json(const nlohmann::json &j, VerificationFieldObject &m) {
}
void from_json(const nlohmann::json &j, VerificationGateInfoObject &m) {
- JS_O("description", m.Description);
+ JS_ON("description", m.Description);
JS_O("form_fields", m.VerificationFields);
JS_O("version", m.Version);
JS_O("enabled", m.Enabled);