2
0
mirror of https://github.com/telegramdesktop/tdesktop synced 2025-08-31 06:26:18 +00:00

Allow hiding members list in groups.

This commit is contained in:
John Preston
2022-12-16 18:22:56 +04:00
parent b0a24238e8
commit af350e2daa
14 changed files with 196 additions and 53 deletions

View File

@@ -577,7 +577,10 @@ bool ChannelData::allowsForwarding() const {
}
bool ChannelData::canViewMembers() const {
return flags() & Flag::CanViewParticipants;
return (flags() & Flag::CanViewParticipants)
&& (!(flags() & Flag::ParticipantsHidden)
|| amCreator()
|| hasAdminRights());
}
bool ChannelData::canViewAdmins() const {
@@ -944,14 +947,20 @@ void ApplyChannelUpdate(
| Flag::CanSetStickers
| Flag::PreHistoryHidden
| Flag::AntiSpam
| Flag::Location;
| Flag::Location
| Flag::ParticipantsHidden;
channel->setFlags((channel->flags() & ~mask)
| (update.is_can_set_username() ? Flag::CanSetUsername : Flag())
| (update.is_can_view_participants() ? Flag::CanViewParticipants : Flag())
| (update.is_can_view_participants()
? Flag::CanViewParticipants
: Flag())
| (update.is_can_set_stickers() ? Flag::CanSetStickers : Flag())
| (update.is_hidden_prehistory() ? Flag::PreHistoryHidden : Flag())
| (update.is_antispam() ? Flag::AntiSpam : Flag())
| (update.vlocation() ? Flag::Location : Flag()));
| (update.vlocation() ? Flag::Location : Flag())
| (update.is_participants_hidden()
? Flag::ParticipantsHidden
: Flag()));
channel->setUserpicPhoto(update.vchat_photo());
if (const auto migratedFrom = update.vmigrated_from_chat_id()) {
channel->addFlags(Flag::Megagroup);