Merge branch 'master' into mobile

This commit is contained in:
ouwou
2021-05-02 00:45:00 -04:00
5 changed files with 25 additions and 6 deletions

View File

@@ -277,6 +277,18 @@ void ChatMessageItemContainer::UpdateTextComponent(Gtk::TextView *tv) {
case MessageType::CALL: { case MessageType::CALL: {
b->insert_markup(s, "<span color='#999999'><i>[started a call]</i></span>"); b->insert_markup(s, "<span color='#999999'><i>[started a call]</i></span>");
} break; } break;
case MessageType::GUILD_DISCOVERY_DISQUALIFIED: {
b->insert_markup(s, "<i><span color='#999999'>This server has been removed from Server Discovery because it no longer passes all the requirements.</span></i>");
} break;
case MessageType::GUILD_DISCOVERY_REQUALIFIED: {
b->insert_markup(s, "<i><span color='#999999'>This server is eligible for Server Discovery again and has been automatically relisted!</span></i>");
} break;
case MessageType::GUILD_DISCOVERY_GRACE_PERIOD_INITIAL_WARNING: {
b->insert_markup(s, "<i><span color='#999999'>This server has failed Discovery activity requirements for 1 week. If this server fails for 4 weeks in a row, it will be automatically removed from Discovery.</span></i>");
} break;
case MessageType::GUILD_DISCOVERY_GRACE_PERIOD_FINAL_WARNING: {
b->insert_markup(s, "<i><span color='#999999'>This server has failed Discovery activity requirements for 3 weeks in a row. If this server fails for 1 more week, it will be removed from Discovery.</span></i>");
} break;
default: break; default: break;
} }
} }

View File

@@ -160,8 +160,11 @@ void Completer::CompleteEmojis(const Glib::ustring &term) {
return entry; return entry;
}; };
const auto self_id = discord.GetUserData().ID;
const bool can_use_external = discord.GetSelfPremiumType() != EPremiumType::None && discord.HasChannelPermission(self_id, channel_id, Permission::USE_EXTERNAL_EMOJIS);
int i = 0; int i = 0;
if (discord.GetSelfPremiumType() == EPremiumType::None) { if (!can_use_external) {
if (channel->GuildID.has_value()) { if (channel->GuildID.has_value()) {
const auto guild = discord.GetGuild(*channel->GuildID); const auto guild = discord.GetGuild(*channel->GuildID);

View File

@@ -1218,6 +1218,9 @@ void DiscordClient::HandleGatewayChannelUpdate(const GatewayMessage &msg) {
if (cur.has_value()) { if (cur.has_value()) {
cur->update_from_json(msg.Data); cur->update_from_json(msg.Data);
m_store.SetChannel(id, *cur); m_store.SetChannel(id, *cur);
if (cur->PermissionOverwrites.has_value())
for (const auto &p : *cur->PermissionOverwrites)
m_store.SetPermissionOverwrite(id, p.ID, p);
m_signal_channel_update.emit(id); m_signal_channel_update.emit(id);
} }
} }

View File

@@ -23,10 +23,10 @@ enum class MessageType {
USER_PREMIUM_GUILD_SUBSCRIPTION_TIER_2 = 10, // yep USER_PREMIUM_GUILD_SUBSCRIPTION_TIER_2 = 10, // yep
USER_PREMIUM_GUILD_SUBSCRIPTION_TIER_3 = 11, // yep USER_PREMIUM_GUILD_SUBSCRIPTION_TIER_3 = 11, // yep
CHANNEL_FOLLOW_ADD = 12, // yep CHANNEL_FOLLOW_ADD = 12, // yep
GUILD_DISCOVERY_DISQUALIFIED = 14, // nope GUILD_DISCOVERY_DISQUALIFIED = 14, // yep
GUILD_DISCOVERY_REQUALIFIED = 15, // nope GUILD_DISCOVERY_REQUALIFIED = 15, // yep
GUILD_DISCOVERY_GRACE_PERIOD_INITIAL_WARNING = 16, // nope GUILD_DISCOVERY_GRACE_PERIOD_INITIAL_WARNING = 16, // yep
GUILD_DISCOVERY_GRACE_PERIOD_FINAL_WARNING = 17, // nope GUILD_DISCOVERY_GRACE_PERIOD_FINAL_WARNING = 17, // yep
THREAD_CREATED = 18, // nope THREAD_CREATED = 18, // nope
INLINE_REPLY = 19, // yep INLINE_REPLY = 19, // yep
APPLICATION_COMMAND = 20, // yep APPLICATION_COMMAND = 20, // yep

View File

@@ -753,7 +753,8 @@ bool Store::CreateTables() {
channel_id INTEGER NOT NULL, channel_id INTEGER NOT NULL,
type INTEGER NOT NULL, type INTEGER NOT NULL,
allow INTEGER NOT NULL, allow INTEGER NOT NULL,
deny INTEGER NOT NULL deny INTEGER NOT NULL,
PRIMARY KEY(id, channel_id)
) )
)"; )";