Commit Graph

3480 Commits

Author SHA1 Message Date
levlam
c886e4f3c8 Don't get channel difference before adding messages for bots. 2023-11-07 02:16:36 +03:00
levlam
baed5606fb Prevent unloading of replied polls. 2023-11-06 20:37:17 +03:00
levlam
da461f5da2 Register replies for yet unsent forwarded messages with external replies. 2023-11-06 19:15:47 +03:00
levlam
aba3f38a2f Add RepliedMessageInfo::legacy static function instead of legacy constructors. 2023-11-06 18:29:47 +03:00
levlam
728e2e18ee Add messageSendingStateFailed.need_drop_reply. 2023-11-06 15:08:28 +03:00
levlam
8bd5f61ee7 Improve documentation spelling. 2023-11-06 13:31:30 +03:00
levlam
8228c2e7b6 Allow to change reply quote in resendMessages. 2023-11-06 13:20:16 +03:00
levlam
0139e73910 Reload replied message when receiving QUOTE_TEXT_INVALID. 2023-11-06 12:50:26 +03:00
levlam
e7f70d0e09 Add messageSendingStateFailed.need_another_reply_quote. 2023-11-06 12:42:06 +03:00
levlam
adc81fcea6 Fallback to default accent color for the chat. 2023-11-02 22:32:59 +03:00
levlam
00a6167952 Never send unknown accent color identifiers to the app. 2023-11-02 22:11:54 +03:00
levlam
1ca86b0c75 Fix message_id checks before accessing input_reply_to. 2023-11-01 22:39:35 +03:00
levlam
46d188e35c Return full link_preview_options in messageText. 2023-11-01 21:55:12 +03:00
levlam
37637bf9ed Preload chat to which belongs the replied meessage from a draft. 2023-11-01 21:32:09 +03:00
levlam
36ce823dcc Add separate flag message.can_be_replied_in_another_chat. 2023-11-01 18:32:55 +03:00
levlam
0e0d6dd5eb Call hide_sender_if_needed immediately after origin creation. 2023-11-01 18:25:44 +03:00
levlam
887fd06e1c Keep external replies when forwarding a message. 2023-11-01 17:14:35 +03:00
levlam
6c1fb4fe57 Postpone adding of draft message to loaded from database chat. 2023-11-01 15:19:03 +03:00
levlam
0bbd41a5d5 Store directly pending_order in Dialog. 2023-11-01 15:02:32 +03:00
levlam
95cf186fe6 Call on_dialog_updated and send_update_chat_draft_message independently. 2023-10-31 23:37:40 +03:00
levlam
740c001ff3 Add struct AddDialogData. 2023-10-31 23:24:28 +03:00
levlam
0e2300e1fa Add warning when reply quote changes. 2023-10-31 18:20:55 +03:00
levlam
5b2dd42e58 Init RepliedMessageInfo fields for sent replies to messages in other chats. 2023-10-29 22:14:41 +03:00
levlam
0ad0f7cdcc Improve function and parameters names. 2023-10-29 22:05:23 +03:00
levlam
77fa45c72c Add MessagesManager::get_message_forward_origin. 2023-10-29 20:40:36 +03:00
levlam
9a66b6ec5c Disallow quotes and replies in other chats in secret chats. 2023-10-29 20:08:59 +03:00
levlam
7f5b50db9b Disallow to reply unknown messages in another chat. 2023-10-29 02:05:08 +03:00
levlam
7f5da4b5c5 Don't allow to reply in another chat non-forwardable messages. 2023-10-29 01:05:55 +03:00
levlam
6e217d1aac Add inputMessageReplyToMessage.chat_id. 2023-10-29 00:50:33 +03:00
levlam
eec35cf63e Init reply_to_random_id for scheduled messages. 2023-10-28 22:21:13 +03:00
levlam
8a17168315 Disable separate notification for messageGiveawayLaunch. 2023-10-28 20:46:14 +03:00
levlam
8adea20fd3 Keep quote when forwarding replies. 2023-10-27 14:33:15 +03:00
levlam
012211ea19 Pass MessageInputReplyTo to set_message_reply. 2023-10-27 13:33:00 +03:00
levlam
ec231f0c99 Add inputMessageReplyToMessage.quote. 2023-10-27 13:06:38 +03:00
levlam
d43fd3beb3 Disallow MessageInputReplyTo copying. 2023-10-27 03:37:26 +03:00
levlam
6517d6b9db Don't copy get_message_input_reply_to return value. 2023-10-27 03:27:03 +03:00
levlam
a92b2fec1d Make MessageInputReplyTo fields private. 2023-10-27 03:03:52 +03:00
levlam
10e2decf4b Add and use RepliedMessageInfo::get_file_ids. 2023-10-27 01:50:32 +03:00
levlam
5b9731a974 Support RepliedMessageInfo in *FromMessage. 2023-10-27 01:41:15 +03:00
levlam
9260d38618 Support giveaway channels in *ChannelFromMessage. 2023-10-27 00:34:33 +03:00
levlam
8128c6e079 Reget message if reply contains MessageUnsupported. 2023-10-26 23:16:06 +03:00
levlam
e50a3ce18c Add messageReplyToMessage.content. 2023-10-26 22:53:25 +03:00
levlam
e113fb47f1 Add compare_message_contents function. 2023-10-26 18:50:16 +03:00
levlam
10c9e400d3 Rename MessageForwardOrigin to MessageOrigin. 2023-10-26 16:26:52 +03:00
levlam
3531481591 Store RepliedMessageInfo in Message. 2023-10-26 14:51:32 +03:00
levlam
e4ffed5752 Move other reply_to_message_id checks to ReplyHeader parsing. 2023-10-25 16:46:17 +03:00
levlam
bd923a36eb Check top_thread_message_id during object parsing. 2023-10-25 16:14:36 +03:00
levlam
27b9ad4526 Store MessageInputReplyTo in Message. 2023-10-25 13:07:25 +03:00
levlam
5216ea1d01 Use InputMessageReplyTo in draftMessage. 2023-10-25 02:07:37 +03:00
levlam
4425eadc3c Pass default DialogId to get_reply_message_full_id. 2023-10-24 18:54:32 +03:00
levlam
cb70dd7831 Add class RepliedMessageInfo. 2023-10-24 12:04:45 +03:00
levlam
abca2962f2 Parse new MessageReplyHeader. 2023-10-23 20:54:47 +03:00
levlam
4027e73309 Support only_preview in sendInlineQueryResultMessage. 2023-10-23 18:58:53 +03:00
levlam
2c464baae1 Support only_preview in sendMessage. 2023-10-23 18:47:31 +03:00
levlam
faf964a10d Move only_preview to messageSendOptions. 2023-10-23 18:40:55 +03:00
levlam
2bbb0ed0ec Add linkPreviewOptions.show_above_text. 2023-10-22 00:50:19 +03:00
levlam
cb51944cb7 Add webPage.show_above_text. 2023-10-21 21:33:46 +03:00
levlam
21ef7d0f6c Disallow restricted member status in channels. 2023-10-19 22:37:44 +03:00
levlam
40017310dd Simplify MessageContent object creation. 2023-10-19 13:59:18 +03:00
levlam
4194d9478b Add webPage.skip_confirmation. 2023-10-19 13:03:27 +03:00
levlam
f78bc2ae32 Add td_api::setChatAccentColor. 2023-10-18 19:43:14 +03:00
levlam
7df8a8f3d0 Support user/chat.background_custom_emoji_id. 2023-10-18 15:59:25 +03:00
levlam
20de4b3135 Remove get_message_content_object parameter. 2023-10-17 16:20:45 +03:00
levlam
dd6fd86637 Add chat.accentColorId. 2023-10-17 15:09:57 +03:00
levlam
8552180f0d Add Message.invert_media flag. 2023-10-17 12:27:26 +03:00
levlam
cdedb9ee1f Return web_page_url in messageText. 2023-10-16 22:33:53 +03:00
levlam
b9e7c8d7da Use messages.sendMedia to send text messages with custom URLs. 2023-10-16 20:41:39 +03:00
levlam
d16fc8294c Add td_api::linkPreviewOptions. 2023-10-16 20:12:33 +03:00
levlam
8185dbfecc Add messageText.is_web_page_preview_manually_chosen. 2023-10-16 17:02:06 +03:00
levlam
8d55df14a0 Support web page flags in messageMediaWebPage. 2023-10-16 16:47:22 +03:00
levlam
84d628f05d Add td_api::messagePremiumGiveawayCreated. 2023-10-16 11:31:11 +03:00
levlam
580e856f44 Support giveaway forwarding. 2023-10-13 12:47:34 +03:00
levlam
9a339166a2 Add td_api::getPremiumGiveawayInfo. 2023-10-06 18:28:02 +03:00
levlam
3e487253c7 Use separate constructors for MessageInputReplyTo. 2023-10-06 13:05:50 +03:00
levlam
811a7c60e1 Add separate td_api::InputMessageReplyTo. 2023-10-06 11:58:05 +03:00
levlam
1ebbd360db Add td_api::messagePremiumGiftCode. 2023-09-29 17:55:03 +03:00
levlam
bd36f48054 Update layer to 166. 2023-09-28 16:13:36 +03:00
levlam
c031818156 Fix available reactions check. 2023-10-26 10:30:01 +03:00
levlam
87f7cdd69f Store MessageFullId in replied_yet_unsent_messages_. 2023-10-25 03:02:26 +03:00
levlam
7152a5c2e1 Never change result of is_from_mention_notification_group. 2023-10-23 17:02:44 +03:00
levlam
996ad86984 Fix reaction showing for anonymous administrators. 2023-10-23 11:07:03 +03:00
levlam
605a3af4b2 Add and use td::any_of. 2023-10-21 20:41:31 +03:00
levlam
687c6c40c2 Reload message views more often for newer messages. 2023-10-20 22:33:15 +03:00
levlam
deda76beda Poll at most last 25 viewed messages. 2023-10-20 21:30:09 +03:00
AYMEN Mohammed
50c3bf2e4f
Fix typos. (#2641) 2023-10-18 19:12:31 +03:00
levlam
f441415da2 Allow to react anonymous group creator on behalf of a supergroup. 2023-10-16 10:35:47 +03:00
levlam
4c64a7522c Disallow reactions by anonymous administrators. 2023-10-16 10:21:21 +03:00
levlam
97a401cd04 Don't use slow BinlogKeyValue::erase_by_prefix for bots on each start. 2023-10-12 22:53:12 +03:00
levlam
8d2d01abcc Always postpone updateChatLastMessage in getCurrentState. 2023-10-11 00:28:56 +03:00
levlam
844e6f2bfb Pass source as pointer to on_update_message_id. 2023-10-10 23:47:28 +03:00
levlam
94f72a026c Inline last usage of MessagesManager::is_forward_info_sender_hidden. 2023-10-09 21:27:14 +03:00
levlam
21068870f0 Add MessageOrigin::hide_sender_if_needed. 2023-10-09 21:24:22 +03:00
levlam
b10220a495 Add MessageOrigin::has_sender_signature(). 2023-10-09 21:16:06 +03:00
levlam
ae6e8b5a91 Add MessageOrigin::get_sender_name(). 2023-10-09 21:10:09 +03:00
levlam
9e82513802 Add and use MessageOrigin::get_message_full_id. 2023-10-09 20:44:44 +03:00
levlam
7b1408d44e Add and use MessageOrigin::get_sender. 2023-10-09 20:06:23 +03:00
levlam
8da2eba168 Add MessageOrigin::add_user_ids/add_channel_ids. 2023-10-09 19:20:53 +03:00
levlam
c05b5ba3e5 Add MessageOrigin::add_dependencies. 2023-10-09 18:56:21 +03:00
levlam
c86d4d1036 Add class MessageOrigin. 2023-10-09 18:48:01 +03:00
levlam
d9d3697987 Remove imported check from is_forward_info_sender_hidden. 2023-10-09 14:23:22 +03:00
levlam
13d02a8644 Add separate class messageImportInfo. 2023-10-09 12:20:32 +03:00
levlam
7d2d0b9f2e Improve names of MessageReaction functions. 2023-09-27 17:25:03 +03:00
levlam
de32750836 Use Dependencies to load data for binlog events if appropriate. 2023-10-08 23:16:59 +03:00
levlam
14b10c7682 Fix my recent chosen reaction chat id also for objects received from the server. 2023-10-04 16:02:53 +03:00
levlam
74679944af Remove error-prone server_time_cached. 2023-10-04 12:24:58 +03:00
levlam
ceaa37fe0d Simplify set_dialog_is_pinned implementation. 2023-10-01 21:49:15 +03:00
levlam
469f87c2bc Allow to remove media_album_id for yet unsent messages. 2023-09-28 00:50:09 +03:00
levlam
ab673a959b Add some index checks. 2023-09-26 14:03:10 +03:00
levlam
84f2985154 Init boolean message fields closer to their first usage. 2023-09-25 22:52:42 +03:00
levlam
83df57a102 Remove MessageInfo.flags. 2023-09-25 22:48:35 +03:00
levlam
09ced5689b Remove most MESSAGE_FLAG usages. 2023-09-25 22:09:31 +03:00
levlam
155095dff7 Move get_message_public_forwards to StatisticsManager. 2023-09-25 21:39:02 +03:00
levlam
7dc1aed0d2 Use can_get_message_statistics in send_get_message_public_forwards_query. 2023-09-25 21:23:14 +03:00
levlam
0d16085d69 Just ignore views of sponsored messages from history preview or unidentified places. 2023-09-24 03:09:53 +03:00
levlam
1e2c0ce814 Rename FullMessageId to MessageFullId. 2023-09-21 19:11:17 +03:00
levlam
b4f6e716ac Add source to get_(chat|channel|secret_chat)_force. 2023-09-21 18:56:13 +03:00
levlam
67cf6d7fe5 Don't log not found chats in load_dialogs. 2023-09-20 20:44:21 +03:00
levlam
6b17c0fdec Use error object in td_api::messageSendingStateFailed/updateMessageSendFailed. 2023-09-19 19:04:56 +03:00
levlam
d1a2ca9261 Disallow replies to channel stories. 2023-09-05 19:31:14 +03:00
levlam
35a319db20 Poll channel max active story identifiers. 2023-09-05 17:41:33 +03:00
levlam
fb7cb1b1d0 Add MessagesManager::resolve_dialog. 2023-09-15 18:20:21 +03:00
levlam
25b8caff59 Add MessagesManager::send_resolve_dialog_username_query. 2023-09-15 17:44:32 +03:00
levlam
f899fe9145 Don't delete notifications when initializing last_new_message_id. There should be no old notifications anyway, but there could be a pending notification about the being added message. 2023-09-13 16:57:44 +03:00
levlam
e65e5b0b49 Extract delete_all_dialog_notifications from delete_all_dialog_messages_from_database. 2023-09-13 16:29:37 +03:00
levlam
a87340edbd Tend to return more results from searchPublicChats. 2023-09-11 23:30:54 +03:00
levlam
793e2ed0be Move account-related methods to AccountManager. 2023-09-08 16:34:11 +03:00
levlam
280209a220 Self-destruct media in private chats when they expire on the other side. 2023-09-07 00:31:05 +03:00
levlam
5ebbda1c26 Add td_api::MessageSelfDestructType. 2023-09-06 21:27:45 +03:00
levlam
aec04a2d01 Support immediately disappearing photos and videos. 2023-09-06 20:45:15 +03:00
levlam
745adb7c52 Add some logging. 2023-09-11 15:09:24 +03:00
levlam
40973f0977 Start chat unload timer when the first message is added to the chat, if it is definitely not the last database message. 2023-09-11 00:14:58 +03:00
levlam
249da789e7 Add messageBotWriteAccessAllowed.by_request. 2023-08-25 16:53:50 +03:00
levlam
917c9dc013 Add ForumTopicManager::read_forum_topic_messages. 2023-09-04 15:34:54 +03:00
levlam
1a2bfad094 Move message content self-destruct time checks to create_input_message_content. 2023-08-29 18:51:57 +03:00
levlam
04b376782c Improve field name. 2023-08-27 02:48:18 +03:00
levlam
1dcd78f1ed Add source to have_dialog_info_force. 2023-08-26 05:00:15 +03:00
levlam
c83149661b Remove useless checks. 2023-08-26 04:38:33 +03:00
levlam
432f77ae85 Use NotificationObjectId in NotificationGroupInfo. 2023-08-26 00:48:57 +03:00
levlam
4455255d9b Add class NotificationObjectId. 2023-08-25 02:04:44 +03:00
levlam
a85d3663bf Add MessagesManager::reload_dialog_notification_settings. 2023-08-24 17:29:22 +03:00
levlam
1e6970e3fe Add NotificationGroupFromDatabase struct. 2023-08-23 19:38:06 +03:00
levlam
fbc74dc8f4 Add and use NotificationManager::have_group_force. 2023-08-23 19:16:57 +03:00
levlam
2fc806785f Use CHECK in MessagesManager::get_dialog_notification_group_id. 2023-08-23 18:54:03 +03:00
levlam
d8472358dc Add MessagesManager::get_story_notification_settings. 2023-08-22 18:55:59 +03:00
levlam
15c14e4983 Use object_id instead of message_id in NotificationGroupInfo. 2023-08-22 16:32:40 +03:00
levlam
ce1fdf097c Add NotificationGroupInfo.has_group_id. 2023-08-22 02:34:26 +03:00
levlam
5144656f2b Add MessagesManager::is_dialog_notification_group_id. 2023-08-22 02:31:47 +03:00
levlam
1289a62c16 Make the rest NotificationGroupInfo fields private. 2023-08-22 00:01:29 +03:00
levlam
db9ca1a847 Add NotificationGroupInfo::is_valid(). 2023-08-21 23:03:55 +03:00
levlam
a93322ae32 Always remove unneeded last_notification_id_. 2023-08-21 22:40:17 +03:00
levlam
8116952371 Make NotificationGroupInfo.last_notification_date_ private. 2023-08-21 22:21:06 +03:00
levlam
5450d2e53d Make NotificationGroupInfo.::max_removed_notification_id_ private. 2023-08-21 22:13:19 +03:00
levlam
4e031ed7fd Make NotificationGroupInfo.max_removed_message_id_ private. 2023-08-21 21:43:26 +03:00
levlam
c40b2b95d2 Add NotificationGroupInfo::is_removed_notification. 2023-08-21 21:37:52 +03:00
levlam
f933f5a25f Add NotificationGroupInfo::set_max_removed_notification_id. 2023-08-21 20:12:30 +03:00
levlam
d22fbcaba6 Add NotificationGroupInfo constructors. 2023-08-21 19:54:12 +03:00
levlam
174f0ca5f5 Add MessagesManager::set_dialog_last_notification_checked. 2023-08-21 19:50:24 +03:00
levlam
e667e45985 Add NotificationGroupInfo::set_last_notification. 2023-08-21 19:46:09 +03:00
levlam
05b1bec6a9 Improve names of NotificationGroupInfo fields. 2023-08-21 19:36:43 +03:00
levlam
6c4545fb3f Make NotificationGroupInfo::try_reuse_ private. 2023-08-21 19:28:05 +03:00
levlam
d2cf780a1f Move class NotificationGroupInfo to a separate header. 2023-08-21 18:52:56 +03:00
levlam
74f0d49f8e Support only Main and Archive folder identifiers. 2023-08-18 17:51:31 +03:00
levlam
c8cbef60cb Save correct chat order even we aren't sure about chat folder. 2023-08-18 16:19:22 +03:00
levlam
770837bcd9 Update chat action bar only if folder_id is changed. 2023-08-18 15:56:12 +03:00
levlam
8d0627b014 Disallow story areas editing without content edit. 2023-08-15 19:39:59 +03:00
levlam
5a60e62892 Add more checks. 2023-08-15 17:55:12 +03:00
levlam
ba527b7e5d Create channel chat to apply an update, even the update will be ignored. 2023-08-15 15:03:13 +03:00
levlam
4f2ad215d3 Initialize PTS in channels from the first received update. 2023-08-15 14:53:14 +03:00
levlam
b12ade01f6 Add more checks for server StoryId. 2023-08-10 20:22:12 +03:00
levlam
6c0878e738 Simplify condition. 2023-08-09 14:56:28 +03:00
levlam
ec6c36e578 Add getBlockedMessageSenders.block_list. 2023-07-28 17:52:44 +03:00
levlam
3794e65b76 Add td_api::BlockList. 2023-07-28 17:33:47 +03:00
levlam
f0e59da1ff Process blocked_my_stories_from flags. 2023-07-28 16:19:05 +03:00
levlam
1022cc6439 Update layer to 161. 2023-07-21 15:41:44 +03:00
levlam
441482c0c4 Remove now unneeded proxies to ReactionManager. 2023-08-09 13:10:06 +03:00
levlam
9dcfd9d66d Add ReactionManager and move there all reaction-related methods from StickersManager. 2023-08-09 12:59:48 +03:00
levlam
d2add02ac9 Move get_sorted_available_reactions to StickersManager. 2023-08-09 12:07:13 +03:00
levlam
39103e07db Add ChatReactions.hpp. 2023-08-06 02:32:09 +03:00
levlam
3fa863e98e Fix misprint. 2023-08-06 01:57:08 +03:00
levlam
830da27abf Minor improvements. 2023-08-05 15:31:42 +03:00
levlam
5558825d61 Add class ReactionType. 2023-08-04 18:39:07 +03:00
levlam
50a0c551cd Remove duplicate check. 2023-08-03 15:06:44 +03:00
levlam
ff3a8e446e Add MessagesManager::load_last_dialog_message instead of get_history_from_the_end. 2023-07-28 14:33:54 +03:00
levlam
58a1ae8e8d Directly call get_history_impl if appropriate. 2023-07-28 14:19:43 +03:00
levlam
f5a066f7ed Support loading of history from the end in get_history_impl. 2023-07-28 14:12:22 +03:00
levlam
73d5b2dcbb Simplify calls to load_messages. 2023-07-28 13:50:02 +03:00
levlam
c071678be1 Add source to MessagesManager::get_history_impl. 2023-07-28 13:32:07 +03:00
levlam
2dba29669f Delete unused MessagesManager::get_history. 2023-07-28 13:22:52 +03:00
levlam
16183df0aa Adjust offset and limit in get_history_impl. 2023-07-28 13:22:07 +03:00
levlam
bd0ca2d6fc Combine all getChatHistory queries. 2023-07-28 03:36:21 +03:00
levlam
9618d58732 Combine get_history_from_the_end queries. 2023-07-27 20:40:56 +03:00
levlam
5c8b12b105 Simplify limit initialization in get_history_from_the_end_impl. 2023-07-27 18:19:10 +03:00
levlam
1fbbecca9b Don't register message users/channels for bots. 2023-07-27 13:16:48 +03:00
levlam
5bc2634d12 Use FlatHashMap for random_id_to_message_id. 2023-07-26 13:38:10 +03:00
levlam
0edd5b1651 Support "CHANNEL_INVALID" errors in response to channels.getDifference. 2023-07-25 14:12:58 +03:00
levlam
5110a188b2 Improve MessageReplyInfo logging and updating. 2023-07-24 15:56:03 +03:00
levlam
62677720fc Immediately unload messages in closed chats after updates.channelDifferenceTooLong. 2023-07-24 15:42:38 +03:00
levlam
1f6342c88e Retry loading of channel difference later if receive invalid poll in a message. 2023-07-23 20:42:30 +03:00
levlam
451c559539 Add various checks. 2023-07-23 01:41:59 +03:00
levlam
2f4b8ba8b3 Don't allow replies to supergroup creation message. 2023-07-22 23:07:51 +03:00
levlam
102222e64f Add source to on_update_channel_max_unavailable_message_id. 2023-07-22 22:40:26 +03:00
levlam
7498aad742 Improve handling of message reading up to unknown message. 2023-07-22 20:03:35 +03:00
levlam
ea848ff2e4 Fix MessagesManager::can_delete_dialog. 2023-07-22 19:58:26 +03:00
levlam
9bebe6dff6 Skip updateChannelTooLong in unknown chats. 2023-07-22 19:17:55 +03:00
levlam
ad8e887aae Keep error logging for invalid unread count only if the counters are recalculated. 2023-07-22 18:58:01 +03:00
levlam
02456042d6 Avoid expected error logging. 2023-07-22 16:38:56 +03:00
levlam
4984307f36 Improve logging. 2023-07-22 14:16:49 +03:00
levlam
240fbe5f36 Fix via_bot_user_id. 2023-07-21 14:49:12 +03:00
levlam
a3e277f7c0 Add source to get_user_force. 2023-07-20 20:38:25 +03:00
levlam
999aaaf610 Update username cache with usernames loaded from database. 2023-07-20 20:09:46 +03:00
levlam
b7551dab33 Poll maximum active story identifiers of non-contact users. 2023-07-18 13:53:22 +03:00
levlam
1b3d14a3f9 Add source to reload_user_full and reload_chat_full. 2023-07-17 18:22:41 +03:00
levlam
fc6ef9d590 Avoid expected error logging. 2023-07-13 21:55:53 +03:00
levlam
b9473decc2 Always list actor_id first in lambda capture. 2023-07-11 17:53:43 +03:00
levlam
3b28485a3f Always apply awaited sent messages. 2023-07-11 17:14:02 +03:00
levlam
bd6e6f28bc Fix handling of RegetDialogLogEvent. 2023-07-07 16:44:08 +03:00
levlam
0f8de6c91d Fix warnings. 2023-07-06 20:55:02 +03:00
levlam
aff810db0d Return back manual load_messages call if receive no messages from database to repair last message with a server-side request. 2023-07-06 01:20:34 +03:00
levlam
6ded199729 Load last chat messages if there are no known messages in the chat. 2023-07-06 01:09:32 +03:00
levlam
ad193a389c Add FileManager::get_missing_file_parts. 2023-07-05 10:55:16 +03:00
levlam
6b010c0207 Add more checks for chat existence before scheduling channel difference. 2023-07-04 15:52:06 +03:00
levlam
8d7ba4da1b Add source to schedule_get_channel_difference. 2023-07-04 15:23:39 +03:00
levlam
8bc4d800bb Forcely create all chats needed for a message before adding it. 2023-07-03 14:09:17 +03:00
levlam
9da2c92ff0 Fix source in add_message_to_dialog_message_list. 2023-07-03 13:47:08 +03:00
levlam
af9351bdfe Reload viewers of replied stories. 2023-07-02 19:10:40 +03:00
levlam
2bf47d0809 Minor fixes. 2023-07-01 16:22:01 +03:00
levlam
bcf9ff7d43 Explicitly include telegram_api.h in cpp files. 2023-07-01 14:53:04 +03:00
levlam
00f88f65f6 Repair channel unread counts if the app wasn't launched for long time. 2023-06-30 15:16:04 +03:00
levlam
c157ffbfb5 Ensure that user_ids are valid in MessageViewers. 2023-06-28 21:40:15 +03:00
levlam
26a0d109c2 Make MessageViewers fields private. 2023-06-28 21:35:59 +03:00
levlam
d3e0372b14 Use Chat as owner of stories in td_api. 2023-06-27 21:51:36 +03:00
levlam
34161cd627 Support more story chat notification settings. 2023-06-27 19:09:43 +03:00
levlam
fca432eb43 Don't reload message reactions for messages with being read reactions. 2023-06-23 14:39:07 +03:00
levlam
04c4e932fe Reload stories from viewed messages once in 5 minutes. 2023-06-23 13:40:59 +03:00
levlam
26c8c0f4fa Add td_api::reportStory. 2023-06-21 23:23:19 +03:00
levlam
d3a08e06dc Read opened stories on server. 2023-06-15 14:51:41 +03:00
levlam
f182e105eb Register web page story sender users for UserFromMessage. 2023-06-13 17:14:19 +03:00
levlam
62e7640701 Add information about Story to web page. 2023-06-13 15:45:10 +03:00
levlam
64badee6f2 Add get_message_content_min_user_ids and register story sender. 2023-06-13 13:46:12 +03:00
levlam
b46d311130 Forward stories without header. 2023-06-12 20:11:41 +03:00
levlam
4b146ee33a Add chatNotificationSettings.mute_stories/use_default_mute_stories. 2023-06-12 20:09:23 +03:00
levlam
686f0eabe6 Add td_api::messageStory and td_api::inputMessageStory. 2023-06-12 19:23:58 +03:00
levlam
0b842dec1e Register media timestamp replies to stories. 2023-06-09 14:08:16 +03:00
levlam
7c386ca353 Support media timestamps in message that a replies to stories. 2023-06-09 13:25:52 +03:00
levlam
48f97c3216 Support dropping of the replied story. 2023-06-08 20:32:57 +03:00
levlam
607ffad07f Ignore is_pinned flag for scheduled messages. 2023-06-08 19:13:53 +03:00
levlam
fa94abaccb Allow to reply stories. 2023-06-08 17:27:24 +03:00
levlam
6116573a3b Add td_api::MessageReplyTo. 2023-06-07 20:32:52 +03:00
levlam
b19b4a3e4f Improve handling of expired messages. 2023-06-07 17:00:37 +03:00
levlam
3a20137c03 Use StoryFullId for replied story. 2023-06-07 15:10:46 +03:00
levlam
114c92f365 Store replied story sender as DialogId. 2023-06-06 15:56:09 +03:00
levlam
56314c5c79 Add Message.replied_story_sender_user_id/replied_story_id. 2023-06-05 20:45:28 +03:00
levlam
e7ca635db9 Improve MessageReplyHeader field names. 2023-06-05 19:45:05 +03:00
levlam
3a6494dd65 Add td_api::editStory. 2023-05-30 14:41:36 +03:00
levlam
936c27577e Check that input content is non-empty inside corresponding functions. 2023-05-25 21:25:16 +03:00
levlam
030e440757 Update layer to 160. 2023-05-01 21:07:01 +03:00
levlam
6e011cb212 Add and use full_message_id variable. 2023-06-01 15:46:57 +03:00
levlam
24d012bc73 Add td_api::searchRecentlyFoundChat. 2023-05-16 21:41:19 +03:00
levlam
f733cb56ce Fix my_recent_chooser when removing reaction. 2023-05-01 18:28:06 +03:00
levlam
e4a15cc0ef Fix MessageReaction::set_my_recent_chooser_dialog_id. 2023-05-01 18:09:27 +03:00
levlam
ac81a35283 Add td_api::getChatFolderChatCount. 2023-05-01 14:57:16 +03:00
levlam
29c0004bfd Automatically send screenshot notification messages. 2023-04-30 16:00:20 +03:00
levlam
1f8129e94f Invalidate authentication codes from copied messages. 2023-04-28 16:36:07 +03:00
levlam
340312e3da Add messageSourceScreenshot and notify about screenshotted codes. 2023-04-28 14:44:35 +03:00
levlam
601a216078 Add reactions on behalf of channels. 2023-04-27 19:31:31 +03:00
levlam
e528c85550 Remove now unneeded parameters from MessageReactions::remove_reaction. 2023-04-27 16:42:38 +03:00
levlam
2d0fa11624 Support my_recent_chooser_dialog_id. 2023-04-27 16:20:54 +03:00
levlam
38efb6d673 Support MessageSenders as poll voters. 2023-04-25 16:41:04 +03:00
levlam
8096cf0439 Register replies to messages in different chats. 2023-06-09 13:44:15 +03:00
levlam
1886bcf850 Make update_message_max_reply_media_timestamp const. 2023-06-08 20:14:38 +03:00
levlam
bc618b855e Replace all message reply-related fields simultaneously. 2023-06-08 20:09:42 +03:00
levlam
6f082a40d2 Improve MessagesManager::create_message_to_send. 2023-06-08 13:39:36 +03:00
levlam
e8ee1c5149 Don't force getChatHistory response for only_local requests. 2023-06-07 15:23:09 +03:00
levlam
7d83f2e15a Remove redundant check, existing also in get_history_impl. 2023-06-07 15:14:45 +03:00
levlam
ea217b10c1 Add MessagesManager::set_message_reply. 2023-06-07 00:57:27 +03:00
levlam
771771a2c7 Check reply_in_dialog_id in relevant places. 2023-06-06 14:32:56 +03:00
levlam
75e00df016 Ensure ordering between messages.getMessagesReactions and channels.readMessageContents. 2023-06-01 15:53:13 +03:00
levlam
6b342e9b0d Ignore reaction changes while there is a pending request to read unread reactions. 2023-06-01 15:31:05 +03:00
levlam
04525f6f6b Completely ignore global drafts in forum chats. 2023-05-31 17:54:31 +03:00
levlam
e599d16fc2 Make DraftMessage fields private and improve their names. 2023-05-31 17:46:06 +03:00
levlam
0b56f92190 Add methods to DraftMessage class. 2023-05-31 17:35:56 +03:00
levlam
978eb97c72 Improve get_draft_message. 2023-05-31 17:19:31 +03:00
levlam
ad5655d359 Add and use add_draft_message_dependencies. 2023-05-31 16:34:12 +03:00
levlam
33cbb2f438 Move ClearAllDraftsQuery to DraftMessage.cpp. 2023-05-31 16:23:23 +03:00
levlam
394ce38278 Move GetAllDraftsQuery to DraftMessage.cpp. 2023-05-31 16:17:20 +03:00
levlam
1aeaaaa733 Move SaveDraftMessageQuery to DraftMessage.cpp. 2023-05-31 15:57:30 +03:00
levlam
ec4d9836ee Add and use need_update_draft_message. 2023-05-31 15:29:37 +03:00
levlam
1ff0e66eb0 Drop ready_size when delete partial remote location. 2023-05-30 12:29:12 +03:00
levlam
716481ca73 Don't allow message date change for server messages after sending. 2023-05-28 23:07:39 +03:00
levlam
8cc992e15e Add MessagesManager::on_get_messages_from_database. 2023-05-28 22:44:27 +03:00
levlam
0907c4fda5 Improve action order in on_get_history_from_database. 2023-05-28 11:15:15 +03:00
levlam
b64f8260f9 Remove manual load_messages call if receive no new messages from database. 2023-05-28 01:17:32 +03:00
levlam
1cf48ab89b Improve log messages. 2023-05-27 23:02:47 +03:00
levlam
54b34e9180 Add more checks for scheduled messages. 2023-05-25 12:13:47 +03:00
levlam
526b602b61 Fix variable use after move. 2023-05-24 14:53:10 +03:00
levlam
0150094c0f Get chat history if receive a chat in chat list without last message. 2023-05-24 12:53:52 +03:00
levlam
7385ca726b Allow messageEmpty in response to messages.getDialogs. 2023-05-24 01:46:00 +03:00
levlam
54e967861c Fail sending of messages from yet_unsent_media_queues_ on restart. 2023-05-23 17:01:51 +03:00
levlam
d01f1ab20a Limit the number of concurrent getChannelDifference requests. 2023-05-23 14:57:04 +03:00
levlam
1aa1185185 Fix misprint. 2023-05-22 19:21:42 +03:00
levlam
7bc891aa0b Repeat channels.getDifference if expected PTS/message_id wasn't reached. 2023-05-22 19:19:36 +03:00
levlam
398fbeadf1 Add MessagesManager::schedule_get_channel_difference function. 2023-05-22 18:23:40 +03:00
levlam
9756d174ee Clear contains_mention/contains_unread_mention message flags for bots. 2023-05-22 15:52:51 +03:00
levlam
d65541d45a Use get_message_file_ids if possible. 2023-05-20 00:49:16 +03:00
levlam
88ab425758 Reload marks as unread if there is no message database. 2023-05-15 18:20:24 +03:00
levlam
e626b5f68f Drop binlog events if message database was deleted. 2023-05-15 18:16:55 +03:00
levlam
18646d6d49 Load expired messages from database in small batches. 2023-05-15 13:28:23 +03:00
levlam
a14a07c33d Remove lower bound check for ttl_expires_at. 2023-05-15 13:04:03 +03:00
levlam
7d3fea5a70 Improve log messages. 2023-05-15 12:37:49 +03:00
levlam
c7b9d54fdb Fix inputChannelFromMessage support. 2023-05-15 11:47:05 +03:00
levlam
f61b5900dd Pass Dialog to read_history_outbox. 2023-05-13 03:51:27 +03:00
levlam
57d3928a50 Pass Dialog to read_history_inbox. 2023-05-13 03:46:43 +03:00
levlam
7dffab5a92 Add MessagesManager::clear_dialog_message_list. 2023-05-13 03:37:35 +03:00
levlam
26bacbb787 Don't send updateNewMessage for yet unsent messages to bots. 2023-05-12 16:58:21 +03:00
levlam
da8b0770ec Don't call add_message_to_dialog_message_list for bots. 2023-05-12 16:44:57 +03:00
levlam
484bd135d1 Add MessagesManager::add_message_to_dialog_message_list. 2023-05-12 16:29:21 +03:00
levlam
f265a154b9 Refactor reply markup removal. 2023-05-12 14:25:00 +03:00
levlam
83648d58d4 Remove now unneeded has_qts_messages checks. 2023-05-11 21:54:28 +03:00
levlam
432ee4c2c4 Remove now redundant parameters have_previous/have_next from add_message_to_dialog. 2023-05-11 20:27:00 +03:00
levlam
2f091e93cc Improve variable names. 2023-05-11 19:54:48 +03:00
levlam
fca143dca8 Pass from_update == true first time when adding failed_to_send messages. 2023-05-11 19:43:30 +03:00
levlam
87b658f2e2 Explicitly attach messages to the next in on_get_history. 2023-05-11 19:21:58 +03:00
levlam
042c75df63 Mark on_get_message parameters as const. 2023-05-11 17:52:53 +03:00
levlam
f1a12e26b2 Early drop unneeded reply_markup_message_id. 2023-05-11 16:54:17 +03:00
levlam
8495dbe580 Always ignore non-personal RemoveKeyboard/ForceReply keyboards. 2023-05-11 16:37:07 +03:00
levlam
492db8032e Immediately call add_scheduled_message_to_dialog for scheduled messages. 2023-05-11 15:46:54 +03:00
levlam
70b3057627 Avoid redundant message_id checks; it has already been checked. 2023-05-11 13:49:22 +03:00
levlam
bbde50ba03 Use "message" for unique_ptr<Message> variables. 2023-05-11 13:26:41 +03:00
levlam
0cc22ca3da Fix saving of are_media_timestamp_entities_found. 2023-05-11 13:20:39 +03:00
levlam
666af51345 Add MessagesManager::fix_new_message. 2023-05-11 13:12:04 +03:00
levlam
1a4e91a207 Don't try to load from database previously failed to load dialogs in add_dialog. 2023-05-11 12:14:25 +03:00
levlam
ed127c1b8d Add MessagesManager::add_dialog_for_new_message. 2023-05-11 12:12:43 +03:00
levlam
7e82f0f860 Move expected logging from ERROR to INFO. 2023-05-11 00:31:15 +03:00
levlam
372509e838 Always call on_message_deleted_from_database from delete_message_from_database. 2023-05-10 23:26:50 +03:00
levlam
151291dc50 Remove redundant assignments. 2023-05-10 23:05:34 +03:00
levlam
c612ef6764 Explicitly create Dialog before adding a message to it. 2023-05-10 20:56:33 +03:00
levlam
11210427a4 Explicitly pass from_database to add_message_to_dialog. 2023-05-10 20:41:02 +03:00
levlam
cc6082c458 Check that last and last_new messages aren't changed by bots. 2023-05-10 20:00:01 +03:00
levlam
d672fa9faa Check that database message ids aren't set for bots. 2023-05-10 19:35:11 +03:00
levlam
04d9879607 Add OrderedMessages::empty(). 2023-05-10 18:57:17 +03:00
levlam
59fcab80a1 Don't send updateMessageContent for yet unsent messages to bots. 2023-05-10 02:00:20 +03:00
levlam
b41bb654e4 Drop via_bot when recending failed to send message. 2023-05-10 01:13:32 +03:00
levlam
ce76e164a9 Update basic group position when it is joined or left. 2023-05-08 17:29:50 +03:00
levlam
ac8c4718d3 Reload information about empty joined chats once to check whether they are still joined. 2023-05-08 17:17:35 +03:00
levlam
a05c86d6ec Improve replies for bots. 2023-05-06 21:47:10 +03:00
levlam
7eb512a0b2 Disable ordered messages for bots. 2023-05-06 02:39:17 +03:00
levlam
22a82c117d Find unloadable messages using LRU. 2023-05-06 02:37:53 +03:00
levlam
b482ffbbeb Check that bots doesn't use suffix load. 2023-05-06 01:56:29 +03:00
levlam
ad20309a1d Don't use last_new_message_id by bots. 2023-05-06 01:46:11 +03:00
levlam
47b225c11f Move limit increase to OrderedMessages::get_history. 2023-05-05 16:31:33 +03:00
levlam
aef0cfe4bc Add OrderedMessages::get_history. 2023-05-05 16:03:03 +03:00
levlam
96979d91b6 Check parameters first in MessagesManager::get_dialog_history. 2023-05-05 15:37:50 +03:00
levlam
a7c963dabb Add OrderedMessage::Iterator::clear. 2023-05-05 12:51:48 +03:00
levlam
53cd6c1a79 Improve includes. 2023-05-03 16:38:49 +03:00
levlam
c47dde6ea9 Don't warn about yet unsent messages with small identifiers for bots. 2023-05-03 16:28:40 +03:00
levlam
f2d11e12f6 Use small identifiers for yet unsent and local messages for bots. 2023-05-03 14:34:06 +03:00
levlam
7507d8e20c Don't restart on message_id overflow. 2023-05-03 14:23:18 +03:00
levlam
d64d3fe258 Ignore last_/first_database_message_id for bots. 2023-05-03 14:08:20 +03:00
levlam
d71d6afe17 Don't use last_message_id for bots. 2023-05-03 13:29:04 +03:00
levlam
71b7487f51 Don't attach messages for bots. 2023-05-03 13:18:05 +03:00
levlam
bba924f6a9 Make remaining OrderedMessage fields private. 2023-05-03 12:59:10 +03:00
levlam
4b048c4bbf Avoid preliminary have_previous_ checks. 2023-05-03 12:54:55 +03:00
levlam
1eb98e9ce5 Improve OrderedMessages::insert. 2023-05-03 12:29:41 +03:00
levlam
4444204874 Minor condition improvements. 2023-05-03 12:22:47 +03:00
levlam
85aedaa8c0 Add more logic to OrderedMessages::insert. 2023-05-03 11:48:06 +03:00
levlam
b8cd0bb597 Improve OrderedMessages::erase. 2023-05-03 01:34:58 +03:00
levlam
28b742e7d3 Improve OrderedMessages::insert. 2023-05-03 00:25:21 +03:00
levlam
e39757b6ec Make OrderedMessage.message_id_ private. 2023-05-02 23:49:59 +03:00
levlam
aa7627108b Improve OrderedMessage field names. 2023-05-02 23:27:37 +03:00
levlam
5ecc3a0968 Use traverse_messages to find minimum message identifier. 2023-05-02 23:11:04 +03:00
levlam
0d1cdc3e60 Add OrderedMessages::auto_attach_message. 2023-05-02 23:00:11 +03:00
levlam
6e4ebc56d1 Move attach_message_to_previous/attach_message_to_next to OrderedMessages. 2023-05-02 22:39:50 +03:00
levlam
4fe8137244 Use ConstIterator to find the last message. 2023-05-02 22:21:37 +03:00
levlam
494a25c19a Fix find_unloadable_messages. 2023-05-02 22:06:08 +03:00
levlam
e9ee762f60 Implement find_unloadable_messages with traverse_messages. 2023-05-02 21:54:11 +03:00
levlam
233984f1e3 Move iterators to class OrderedMessages. 2023-05-02 19:07:02 +03:00
levlam
0a3ecfd03c Add OrderedMessages::find_message_by_date. 2023-05-02 18:47:20 +03:00
levlam
f92d108319 Add OrderedMessages::find_messages_by_date. 2023-05-02 18:40:22 +03:00
levlam
961c9802af Add OrderedMessages::find_newer_messages. 2023-05-02 18:17:06 +03:00
levlam
2e0cba4eea Add OrderedMessages::find_older_messages. 2023-05-02 18:11:37 +03:00
levlam
2ff3233115 Add class OrderedMessages. 2023-05-02 18:04:54 +03:00
levlam
5ef84c5c65 Move class OrderedMessage out of MessagesManager. 2023-05-02 17:38:55 +03:00
levlam
df626f266e Inline create_ordered_message. 2023-05-02 17:30:12 +03:00
levlam
316ba04a47 Inline treap_find_message. 2023-05-02 17:25:15 +03:00
levlam
453a53c953 Remove return value from treap_delete_message. 2023-05-02 17:18:05 +03:00
levlam
16873cad78 Ignore message order in find_messages. 2023-05-02 16:54:52 +03:00
levlam
0af40e53ac Inline delete_all_dialog_messages_from_database. 2023-05-02 16:46:37 +03:00
levlam
fe20d43694 Remove MessagesManager::set_message_id. 2023-05-02 16:18:48 +03:00
levlam
7832c5d78c Store message order separately from messages themselves. 2023-05-02 16:07:01 +03:00
levlam
36fede32c6 Reuse message iterator in MessagesManager::do_delete_message. 2023-05-02 14:59:20 +03:00
levlam
b9210f852c Simplify attach_message_to_next/attach_message_to_previous usage. 2023-05-02 14:35:42 +03:00
levlam
0191b7bdb7 Initialize message->have_previous/have_next only after message is added to treap. 2023-05-02 14:21:03 +03:00
levlam
2bf7509603 Attach message to next/previous even it is outdated. 2023-05-02 13:35:10 +03:00
levlam
aace2a6465 Explicitly pass have_previous and have_next to add_message_to_dialog. 2023-05-02 13:22:13 +03:00
levlam
8a72bb7602 Don't use have_previous/have_next in update_message. 2023-05-02 13:12:29 +03:00
levlam
aa6e85404a Store scheduled messages in a HashTable. 2023-05-02 00:52:23 +03:00
levlam
713b1f086e Add MessagesManager::have_dialog_scheduled_messages_in_memory helper. 2023-05-01 23:15:54 +03:00
levlam
5397fe43e0 Ignore stored Message::have_previous/have_next flags. 2023-05-01 22:43:08 +03:00
levlam
77dbb2bf68 Don't use MessageSearchFilter::Pinned for bots. 2023-05-01 16:55:12 +03:00
levlam
8757f540ac Force postponed updateChatReadInbox before returning the chat. 2023-05-01 16:41:04 +03:00