diff options
Diffstat (limited to 'windows')
-rw-r--r-- | windows/guildsettings/auditlogpane.cpp | 2 | ||||
-rw-r--r-- | windows/guildsettings/auditlogpane.hpp | 2 | ||||
-rw-r--r-- | windows/mainwindow.cpp | 18 |
3 files changed, 13 insertions, 9 deletions
diff --git a/windows/guildsettings/auditlogpane.cpp b/windows/guildsettings/auditlogpane.cpp index 5a6cb82..08f99da 100644 --- a/windows/guildsettings/auditlogpane.cpp +++ b/windows/guildsettings/auditlogpane.cpp @@ -1,5 +1,5 @@ #include "auditlogpane.hpp" -#include "../../abaddon.hpp" +#include "abaddon.hpp" using namespace std::string_literals; diff --git a/windows/guildsettings/auditlogpane.hpp b/windows/guildsettings/auditlogpane.hpp index 89749aa..ac12321 100644 --- a/windows/guildsettings/auditlogpane.hpp +++ b/windows/guildsettings/auditlogpane.hpp @@ -1,6 +1,6 @@ #pragma once #include <gtkmm.h> -#include "../../discord/objects.hpp" +#include "discord/objects.hpp" class GuildSettingsAuditLogPane : public Gtk::ScrolledWindow { public: diff --git a/windows/mainwindow.cpp b/windows/mainwindow.cpp index 61ebbfa..13c9348 100644 --- a/windows/mainwindow.cpp +++ b/windows/mainwindow.cpp @@ -228,10 +228,12 @@ void MainWindow::UpdateChatReactionRemove(Snowflake id, const Glib::ustring &par void MainWindow::OnDiscordSubmenuPopup(const Gdk::Rectangle *flipped_rect, const Gdk::Rectangle *final_rect, bool flipped_x, bool flipped_y) { auto &discord = Abaddon::Get().GetDiscordClient(); auto channel_id = GetChatActiveChannel(); - auto channel = discord.GetChannel(channel_id); m_menu_discord_add_recipient.set_visible(false); - if (channel.has_value() && channel->GetDMRecipients().size() + 1 < 10) - m_menu_discord_add_recipient.set_visible(channel->Type == ChannelType::GROUP_DM); + if (channel_id.IsValid()) { + auto channel = discord.GetChannel(channel_id); + if (channel.has_value() && channel->GetDMRecipients().size() + 1 < 10) + m_menu_discord_add_recipient.set_visible(channel->Type == ChannelType::GROUP_DM); + } const bool discord_active = Abaddon::Get().GetDiscordClient().IsStarted(); @@ -246,12 +248,14 @@ void MainWindow::OnDiscordSubmenuPopup(const Gdk::Rectangle *flipped_rect, const void MainWindow::OnViewSubmenuPopup(const Gdk::Rectangle *flipped_rect, const Gdk::Rectangle *final_rect, bool flipped_x, bool flipped_y) { m_menu_view_friends.set_sensitive(Abaddon::Get().GetDiscordClient().IsStarted()); auto channel_id = GetChatActiveChannel(); - auto channel = Abaddon::Get().GetDiscordClient().GetChannel(channel_id); m_menu_view_pins.set_sensitive(false); m_menu_view_threads.set_sensitive(false); - if (channel.has_value()) { - m_menu_view_threads.set_sensitive(channel->Type == ChannelType::GUILD_TEXT || channel->IsThread()); - m_menu_view_pins.set_sensitive(channel->Type == ChannelType::GUILD_TEXT || channel->Type == ChannelType::DM || channel->Type == ChannelType::GROUP_DM || channel->IsThread()); + if (channel_id.IsValid()) { + auto channel = Abaddon::Get().GetDiscordClient().GetChannel(channel_id); + if (channel.has_value()) { + m_menu_view_threads.set_sensitive(channel->Type == ChannelType::GUILD_TEXT || channel->IsThread()); + m_menu_view_pins.set_sensitive(channel->Type == ChannelType::GUILD_TEXT || channel->Type == ChannelType::DM || channel->Type == ChannelType::GROUP_DM || channel->IsThread()); + } } } |