diff --git a/Telegram/Resources/langs/lang.strings b/Telegram/Resources/langs/lang.strings index a935525e0..d3a4b9732 100644 --- a/Telegram/Resources/langs/lang.strings +++ b/Telegram/Resources/langs/lang.strings @@ -2000,6 +2000,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL "lng_admin_log_filter_messages_deleted" = "Deleted messages"; "lng_admin_log_filter_messages_edited" = "Edited messages"; "lng_admin_log_filter_messages_pinned" = "Pinned messages"; +"lng_admin_log_filter_voice_chats" = "Voice chat"; "lng_admin_log_filter_members_removed" = "Leaving members"; "lng_admin_log_filter_all_admins" = "All users and admins"; "lng_admin_log_about" = "What is this?"; diff --git a/Telegram/Resources/tl/api.tl b/Telegram/Resources/tl/api.tl index ddd731705..4c7722f4a 100644 --- a/Telegram/Resources/tl/api.tl +++ b/Telegram/Resources/tl/api.tl @@ -889,7 +889,7 @@ channelAdminLogEvent#3b5a3e40 id:long date:int user_id:int action:ChannelAdminLo channels.adminLogResults#ed8af74d events:Vector chats:Vector users:Vector = channels.AdminLogResults; -channelAdminLogEventsFilter#ea107ae4 flags:# join:flags.0?true leave:flags.1?true invite:flags.2?true ban:flags.3?true unban:flags.4?true kick:flags.5?true unkick:flags.6?true promote:flags.7?true demote:flags.8?true info:flags.9?true settings:flags.10?true pinned:flags.11?true edit:flags.12?true delete:flags.13?true = ChannelAdminLogEventsFilter; +channelAdminLogEventsFilter#ea107ae4 flags:# join:flags.0?true leave:flags.1?true invite:flags.2?true ban:flags.3?true unban:flags.4?true kick:flags.5?true unkick:flags.6?true promote:flags.7?true demote:flags.8?true info:flags.9?true settings:flags.10?true pinned:flags.11?true edit:flags.12?true delete:flags.13?true group_call:flags.14?true = ChannelAdminLogEventsFilter; popularContact#5ce14175 client_id:long importers:int = PopularContact; diff --git a/Telegram/SourceFiles/calls/calls_group_call.cpp b/Telegram/SourceFiles/calls/calls_group_call.cpp index af8541429..8f3f51ca9 100644 --- a/Telegram/SourceFiles/calls/calls_group_call.cpp +++ b/Telegram/SourceFiles/calls/calls_group_call.cpp @@ -233,8 +233,13 @@ void GroupCall::rejoin() { }).fail([=](const RPCError &error) { const auto type = error.type(); LOG(("Call Error: Could not join, error: %1").arg(type)); - hangup(); + if (type == u"GROUPCALL_SSRC_DUPLICATE_MUCH") { + rejoin(); + return; + } + + hangup(); Ui::ShowMultilineToast({ .text = (type == u"GROUPCALL_ANONYMOUS_FORBIDDEN"_q ? tr::lng_group_call_no_anonymous(tr::now) diff --git a/Telegram/SourceFiles/history/admin_log/history_admin_log_filter.cpp b/Telegram/SourceFiles/history/admin_log/history_admin_log_filter.cpp index d78e68c49..da48d045b 100644 --- a/Telegram/SourceFiles/history/admin_log/history_admin_log_filter.cpp +++ b/Telegram/SourceFiles/history/admin_log/history_admin_log_filter.cpp @@ -282,6 +282,7 @@ void FilterBox::Inner::createActionsCheckboxes(const FilterValue &filter) { addFlag(Flag::f_edit, tr::lng_admin_log_filter_messages_edited(tr::now)); if (isGroup) { addFlag(Flag::f_pinned, tr::lng_admin_log_filter_messages_pinned(tr::now)); + addFlag(Flag::f_group_call, tr::lng_admin_log_filter_voice_chats(tr::now)); } addFlag(Flag::f_leave, tr::lng_admin_log_filter_members_removed(tr::now)); }