From 57f1b326178233a6dfee20256124909ce696103c Mon Sep 17 00:00:00 2001 From: levlam Date: Thu, 4 Jan 2024 19:55:48 +0300 Subject: [PATCH] Move remove_secret_chat_dialog_ids to DialogId. --- td/telegram/DialogId.cpp | 5 +++++ td/telegram/DialogId.h | 2 ++ td/telegram/MessagesManager.cpp | 11 +++-------- td/telegram/MessagesManager.h | 2 -- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/td/telegram/DialogId.cpp b/td/telegram/DialogId.cpp index 9b3ad33a0..e32aaffac 100644 --- a/td/telegram/DialogId.cpp +++ b/td/telegram/DialogId.cpp @@ -179,4 +179,9 @@ vector DialogId::get_dialog_ids(const vector &chat_ids) { return transform(chat_ids, [](int64 chat_id) { return DialogId(chat_id); }); } +vector DialogId::remove_secret_chat_dialog_ids(vector dialog_ids) { + td::remove_if(dialog_ids, [](DialogId dialog_id) { return dialog_id.get_type() == DialogType::SecretChat; }); + return dialog_ids; +} + } // namespace td diff --git a/td/telegram/DialogId.h b/td/telegram/DialogId.h index 420363321..9244fb8fc 100644 --- a/td/telegram/DialogId.h +++ b/td/telegram/DialogId.h @@ -72,6 +72,8 @@ class DialogId { static vector get_dialog_ids(const vector &chat_ids); + static vector remove_secret_chat_dialog_ids(vector dialog_ids); + template void store(StorerT &storer) const { storer.store_long(id); diff --git a/td/telegram/MessagesManager.cpp b/td/telegram/MessagesManager.cpp index 5d2e65bd1..8b7b894e4 100644 --- a/td/telegram/MessagesManager.cpp +++ b/td/telegram/MessagesManager.cpp @@ -15613,7 +15613,7 @@ void MessagesManager::on_get_dialogs(FolderId folder_id, vectorauth_manager_->is_bot()); auto *folder_list = get_dialog_list(DialogListId(folder_id)); CHECK(folder_list != nullptr); - auto pinned_dialog_ids = remove_secret_chat_dialog_ids(get_pinned_dialog_ids(DialogListId(folder_id))); + auto pinned_dialog_ids = DialogId::remove_secret_chat_dialog_ids(get_pinned_dialog_ids(DialogListId(folder_id))); bool are_pinned_dialogs_saved = folder_list->are_pinned_dialogs_inited_; folder_list->are_pinned_dialogs_inited_ = true; if (pinned_dialog_ids != added_dialog_ids) { @@ -18569,11 +18569,6 @@ int32 MessagesManager::get_pinned_dialogs_limit(DialogListId dialog_list_id) con return limit; } -vector MessagesManager::remove_secret_chat_dialog_ids(vector dialog_ids) { - td::remove_if(dialog_ids, [](DialogId dialog_id) { return dialog_id.get_type() == DialogType::SecretChat; }); - return dialog_ids; -} - Status MessagesManager::toggle_dialog_is_pinned(DialogListId dialog_list_id, DialogId dialog_id, bool is_pinned) { if (td_->auth_manager_->is_bot()) { return Status::Error(400, "Bots can't change chat pin state"); @@ -18732,8 +18727,8 @@ Status MessagesManager::set_pinned_dialogs(DialogListId dialog_list_id, vectordialog_filter_manager_->set_pinned_dialog_ids( diff --git a/td/telegram/MessagesManager.h b/td/telegram/MessagesManager.h index c57a99e23..813956842 100644 --- a/td/telegram/MessagesManager.h +++ b/td/telegram/MessagesManager.h @@ -2503,8 +2503,6 @@ class MessagesManager final : public Actor { int32 get_pinned_dialogs_limit(DialogListId dialog_list_id) const; - static vector remove_secret_chat_dialog_ids(vector dialog_ids); - bool set_dialog_is_pinned(DialogId dialog_id, bool is_pinned); bool set_dialog_is_pinned(DialogListId dialog_list_id, Dialog *d, bool is_pinned,