aboutsummaryrefslogtreecommitdiffhomepage
path: root/td/telegram/ReactionManager.cpp
diff options
context:
space:
mode:
authorlevlam <levlam@telegram.org>2024-05-08 18:08:15 +0300
committerlevlam <levlam@telegram.org>2024-05-08 18:08:15 +0300
commitaab71e18cf4cd55e8d37fde5b0689ffc3648e36d (patch)
tree6b1fac851e3490811ad9104af04834bfb5239c56 /td/telegram/ReactionManager.cpp
parent4b3e0ee8eba8287f834fe7abaf7a0d364cfb9660 (diff)
Add td_api::getMessageEffect.
Diffstat (limited to 'td/telegram/ReactionManager.cpp')
-rw-r--r--td/telegram/ReactionManager.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/td/telegram/ReactionManager.cpp b/td/telegram/ReactionManager.cpp
index 07afbe52e..9dcb7553e 100644
--- a/td/telegram/ReactionManager.cpp
+++ b/td/telegram/ReactionManager.cpp
@@ -1213,6 +1213,15 @@ td_api::object_ptr<td_api::messageEffect> ReactionManager::get_message_effect_ob
effect.emoji_, effect.is_premium_, std::move(type));
}
+td_api::object_ptr<td_api::messageEffect> ReactionManager::get_message_effect_object(int64 effect_id) const {
+ for (auto &effect : message_effects_.effects_) {
+ if (effect.id_ == effect_id) {
+ return get_message_effect_object(effect);
+ }
+ }
+ return nullptr;
+}
+
td_api::object_ptr<td_api::messageEffects> ReactionManager::get_message_effects_object() const {
auto effects =
transform(message_effects_.effects_, [&](const Effect &effect) { return get_message_effect_object(effect); });
@@ -1323,6 +1332,18 @@ void ReactionManager::on_get_message_effects(
promise.set_value(get_message_effects_object());
}
+void ReactionManager::get_message_effect(int64 effect_id,
+ Promise<td_api::object_ptr<td_api::messageEffect>> &&promise) {
+ /*
+ load_message_effects();
+ if (effects_.effects_.empty() && effects_.are_being_reloaded_) {
+ pending_get_message_effect_queries_.emplace_back(effect_id, std::move(promise));
+ return;
+ }
+ */
+ promise.set_value(get_message_effect_object(effect_id));
+}
+
void ReactionManager::get_current_state(vector<td_api::object_ptr<td_api::Update>> &updates) const {
if (td_->auth_manager_->is_bot()) {
return;