summaryrefslogtreecommitdiff
path: root/windows/mainwindow.cpp
diff options
context:
space:
mode:
authorouwou <26526779+ouwou@users.noreply.github.com>2021-11-20 18:48:15 -0500
committerouwou <26526779+ouwou@users.noreply.github.com>2021-11-20 18:48:15 -0500
commit574cbc35d85d5f90e2d5946da636f9c1cc0cd2ad (patch)
tree3797355d4db144311820b499501ff104e0eadd9a /windows/mainwindow.cpp
parent9d21df8e1bca9ccfa1bcfcde3bc8f35473866166 (diff)
parentfc76a15c4636df4961af1879ddecb111a9f68260 (diff)
downloadabaddon-portaudio-574cbc35d85d5f90e2d5946da636f9c1cc0cd2ad.tar.gz
abaddon-portaudio-574cbc35d85d5f90e2d5946da636f9c1cc0cd2ad.zip
merge store
Diffstat (limited to 'windows/mainwindow.cpp')
-rw-r--r--windows/mainwindow.cpp18
1 files changed, 11 insertions, 7 deletions
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());
+ }
}
}