Commit Graph

2923 Commits

Author SHA1 Message Date
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
levlam
0e02512f47 Ensure that bots doesn't access message index counts. 2023-05-01 16:33:32 +03:00
levlam
b40865f81c Do nothing in on_message_deleted_from_database for bots. 2023-05-01 16:03:23 +03:00
levlam
a544fc205f Call on_message_deleted_from_database for failed to add from database messages. 2023-05-01 15:58:01 +03:00
levlam
730dac8dfe Add MessagesManager::on_message_deleted_from_database. 2023-05-01 15:48:35 +03:00
levlam
3c2e08633b Delay updateChatReadInbox updates in opened chats. 2023-05-01 15:33:51 +03:00
levlam
03e4013c9d Don't resave chat when sending postponed updateChatReadInbox. 2023-05-01 15:17:08 +03:00
levlam
5aff4aa27b Hide global draft for forum chats. 2023-04-29 21:58:39 +03:00
levlam
868d894779 Don't autostart blocked bots. 2023-04-24 16:03:08 +03:00
levlam
bed72ccf14 Improve variable names. 2023-04-22 23:46:43 +03:00
levlam
15e9a2bc1f Remove old comment. 2023-04-19 18:19:12 +03:00
levlam
ca842596ab Fix read_dialog_inbox. 2023-04-17 12:28:51 +03:00
levlam
cfe57dbd60 Add td_api::readChatList. 2023-04-14 15:17:25 +03:00
levlam
d302dbd241 Add MessagesManager::read_dialog_inbox. 2023-04-14 14:55:59 +03:00
levlam
598ba5422f Add MessagesManager::get_chat_ids_object. 2023-04-14 13:38:25 +03:00
levlam
cfc46b1893 Load chat with its info if appropriate. 2023-04-13 23:13:38 +03:00
levlam
e1eff4a06a Add MessagesManager::get_chat_id_object for checking chat_id before returning it. 2023-04-13 22:41:22 +03:00
levlam
e85a83ffb7 Don't add muted by admin users to recent speakers. 2023-04-12 11:24:06 +03:00
levlam
e0bee7757b Improve get_message_user_ids and get_message_channel_ids. 2023-04-12 01:33:48 +03:00
levlam
00ed2f85b8 Support dark_theme_brightness for chat backgrounds. 2023-04-10 18:45:26 +03:00
levlam
13d0536db1 Add chat.background. 2023-04-10 17:23:21 +03:00
levlam
0823c902bd Add td_api::messageChatSetBackground. 2023-04-10 14:12:35 +03:00
levlam
90967ba8cf Improve source in get_channel_full_force. 2023-04-09 23:47:47 +03:00
levlam
aebf904513 Various chat folder fixes. 2023-04-06 23:15:22 +03:00
levlam
f12fedd4d6 Add class DialogFilterDialogInfo. 2023-03-27 18:34:25 +03:00
levlam
f4daa4b61a Move dialog filter list to DialogFilterManager. 2023-03-27 17:44:13 +03:00
levlam
9259728d16 Use do_edit_dialog_filter. 2023-03-27 14:16:02 +03:00
levlam
2ef970307b Move get_chat_filter_object and load_dialog_filter to DialogFilterManager. 2023-03-27 14:09:55 +03:00
levlam
0ff733edad Move recommended filters to DialogFilterManager. 2023-03-27 11:50:40 +03:00
levlam
6bc7c38e5f Add DialogId::get_chat_ids. 2023-04-01 23:37:36 +03:00
levlam
1ce9f9d27c Minor improvements. 2023-03-24 14:14:37 +03:00
levlam
b718933607 Don't drop is_outgoing message flag. 2023-03-23 16:54:18 +03:00
levlam
cb27d4bd07 Make DialogFilter fields private. 2023-03-22 23:19:32 +03:00
levlam
f10fb4b6b5 Add and use DialogFilter::get_pinned_dialog_ids(). 2023-03-22 23:09:57 +03:00
levlam
7871a4192a Add DialogFilter::is_dialog_pinned. 2023-03-22 23:05:13 +03:00
levlam
d0593a02c1 Add DialogFilter::can_have_archived_dialogs. 2023-03-22 22:35:37 +03:00
levlam
dc18ce7b0e Add and use DialogFilter::is_dialog_included. 2023-03-22 22:30:00 +03:00
levlam
f733e01d76 Add more checks for get_input_channel responses. 2023-03-22 18:35:28 +03:00
levlam
25047c28cf Use TRY_RESULT_PROMISE for get_input_user. 2023-03-22 17:39:56 +03:00
levlam
d1146a46f2 Add more secret chat checks. 2023-03-22 16:44:52 +03:00
levlam
dbf66634cf Add DialogFilter::can_include_dialog. 2023-03-22 14:26:05 +03:00
levlam
4c5651027e Add DialogFilter::set_pinned_dialog_ids. 2023-03-22 14:14:21 +03:00
levlam
b5df19ae34 Improve DialogFilter variable names. 2023-03-22 13:36:28 +03:00
levlam
ecc57d7b93 Move set_dialog_filters_order to DialogFilter. 2023-03-22 01:24:14 +03:00
levlam
f792137692 Add DialogFilter::need_dialog. 2023-03-22 01:17:07 +03:00
levlam
06940b2817 Add DialogFilter::get_chat_filter_object. 2023-03-22 01:00:54 +03:00
levlam
0c22f267c2 Improve log message. 2023-03-22 00:49:51 +03:00
levlam
54a9f1a554 Completely delete DialogFilter if all chats there are inaccessible. 2023-03-22 00:28:18 +03:00
levlam
18b7ee5e62 Add DialogFilter::set_dialog_is_pinned/include_dialog. 2023-03-21 23:21:19 +03:00
levlam
739bc08a31 Add DialogFilter::remove_dialog_id. 2023-03-21 23:20:33 +03:00
levlam
c5c06a8523 Move get_dialog_filter_ids to DialogFilter. 2023-03-21 22:35:00 +03:00
levlam
bfc0361b02 Move get_dialog_filter_folder_ids to DialogFilter. 2023-03-21 17:02:09 +03:00
levlam
d8a7114a2b Move create_dialog_filter to DialogFilter. 2023-03-21 16:55:07 +03:00
levlam
9acf785389 Move sort_input_dialog_ids to class DialogFilter. 2023-03-21 16:26:06 +03:00
levlam
51c4c1368b Add DialogFilter::for_each_dialog. 2023-03-21 16:12:47 +03:00
levlam
c44869f873 Support input*FromMessage. 2023-03-17 18:51:04 +03:00
levlam
5ee4ba2759 Fix warning. 2023-03-17 02:06:45 +03:00
levlam
897319a275 Add more is_bot checks. 2023-03-16 23:38:03 +03:00
levlam
f282e2b6ac Pass NotificationInfo to get_next_notification_id. 2023-03-16 23:11:08 +03:00
levlam
ad08cc1775 PAss NotificationInfo to *notification_id_to_message_id_correspondence. 2023-03-16 23:07:12 +03:00
levlam
7406361444 Improve NotificationInfo field names. 2023-03-16 22:57:14 +03:00
levlam
ea2567f5d0 Move max_notification_message_id to NotificationInfo. 2023-03-16 22:54:03 +03:00
levlam
b01ee666e9 Add struct NotificationInfo. 2023-03-16 22:38:29 +03:00
levlam
96981eed53 Add get_notification_group_info helper. 2023-03-16 20:39:00 +03:00
levlam
b19a1f5ba4 Move scheduled message info into a class. 2023-03-16 20:10:54 +03:00
levlam
c9a1d5bee6 Move read_history_log_event_ids out of Dialog. 2023-03-16 18:21:51 +03:00
levlam
a9e70dcafc Move updated_read_history_message_ids out of Dialog. 2023-03-16 18:05:36 +03:00
levlam
3a1aaa1148 Move suffix load out of Dialog. 2023-03-16 17:54:33 +03:00
levlam
97fa882a8f Move pending_viewed_live_locations out of Dialog. 2023-03-16 16:15:54 +03:00
levlam
365c639c22 Move pending message views out of Dialog. 2023-03-15 23:45:30 +03:00
levlam
1b23cf0478 Don't use yet_unsent_thread_message_ids_ for bots. 2023-03-15 17:01:38 +03:00
levlam
7d99fc50ed Move yet_unsent_thread_message_ids out of Dialog. 2023-03-15 16:59:23 +03:00
levlam
78d5146188 Move yet_unsent_message_id_to_persistent_message_id out of each Dialog. 2023-03-15 16:50:56 +03:00
levlam
5ee1c751f9 Remove debug_message_op. 2023-03-15 16:26:22 +03:00
levlam
d132c3e50d Add Global::keep_media_order. 2023-03-14 01:48:32 +03:00
levlam
d6faa001e2 Add Global::use_sqlite_pmc. 2023-03-14 01:41:04 +03:00
levlam
367d3eaa2b Move ignore_background_updates() to Td. 2023-03-13 21:13:59 +03:00
levlam
f1311610e5 Remove unneeded TdParameters.h includes. 2023-03-13 20:10:18 +03:00
levlam
835ee52491 Make TdParameters private in Global. 2023-03-13 19:47:38 +03:00
levlam
b373fc6f2b Update scheduled_message_date when message date changes. 2023-03-13 15:43:15 +03:00
levlam
8847638d28 Autostart bots with non-empty message history. 2023-03-11 23:18:24 +03:00
levlam
703ef13a86 Fix messageSendOptions processing. 2023-03-09 22:21:24 +03:00
levlam
c2a25b7652 Don't try to reload channel scheduled messages if have no access to them. 2023-03-09 16:56:48 +03:00
levlam
f100399c8e Don't call getDifference explicitly after failed requests. 2023-03-09 16:41:31 +03:00
levlam
95177f4aad Drop last_message_id when the last message is unloaded from memory. 2023-03-09 14:42:26 +03:00
levlam
5cd6b2d853 Handle invalid data index table size. 2023-03-08 19:23:12 +03:00
levlam
d2c7584cf4 Fail message parsing immediately if parsed invalid message identifier. 2023-03-08 12:49:22 +03:00
levlam
bce6af3a19 Imrove viewMessages for threads with root messages from albums. 2023-03-07 19:07:12 +03:00
levlam
4803cf970d Universally initialize max_thread_message_id. 2023-03-07 18:22:39 +03:00
levlam
a49e63985d Send updateAddChatMembersPrivacyForbidden after successful request response. 2023-03-06 21:42:06 +03:00
levlam
e7242b1188 Fix includes. 2023-03-06 20:36:56 +03:00
levlam
6692f9c918 Allow to view additional root thread messages. 2023-03-06 12:35:52 +03:00
levlam
31be0a5be8 Fix viewMessages.force_read. 2023-03-05 15:49:08 +03:00
levlam
b45d56d116 Add updateAddChatMembersPrivacyForbidden. 2023-03-03 14:42:30 +03:00
levlam
319a3f1c39 Add and use LinkManager::get_t_me_url(). 2023-03-01 23:49:22 +03:00
levlam
b427a7b9f6 Add send_emoji to get_input_media. 2023-02-27 02:12:21 +03:00
levlam
1f32ae3dfd Add sending_id to messageSendOptions. 2023-02-23 17:05:43 +03:00
levlam
439dd7c2ca Add td_api::messageViewers. 2023-02-23 15:15:10 +03:00
levlam
b4a86fb299 Add MessageWebViewWriteAccessAllowed. 2023-02-22 12:24:43 +03:00
levlam
91a13ea705 Allow multiple open/close for the same chat. 2023-02-07 21:45:03 +03:00
levlam
fbea859a11 Add MessageSource to viewMessages. 2023-02-07 21:08:54 +03:00
levlam
f6615189af Update layer to 154. 2023-02-07 14:01:45 +03:00
levlam
22fdc0258b Use "receive"/"have"/"loaded" instead of "got" and other log message improvements. 2023-02-26 14:22:31 +03:00
levlam
ffcc1719ef Improve log message spelling. 2023-02-26 13:41:49 +03:00
levlam
3979fc122b Allow to create basic groups without other members. 2023-02-24 16:33:14 +03:00
levlam
c4b7100ad8 Repair unread mention count in channels when a mention is read. 2023-02-22 13:09:24 +03:00
levlam
bc8811ea82 Simplify MessagesManager::can_unload_message for bots; allow to unload the last message. 2023-02-20 12:40:49 +03:00
levlam
6cf6f32418 Add Global::ignore_result_if_closing. 2023-02-16 13:35:27 +03:00
levlam
5a39bb4952 Use error code returned by get_input_file_id. 2023-02-09 18:31:02 +03:00
levlam
f6616f6ba3 Fix creator in ForumTopicInfo. 2023-02-04 17:59:17 +03:00
levlam
0adcac246a Use explicit as_mutable_slice to get MutableSlice. 2023-02-02 17:40:47 +03:00
levlam
882de6e8e8 Replace unsafe to maintain data_ field with get_data() method. 2023-02-02 03:08:26 +03:00
levlam
b067159d78 Improve chat type check. 2023-02-01 02:10:03 +03:00
levlam
b1ea693f1b Don't try to repair empty draft message. 2023-02-01 01:51:41 +03:00
levlam
a347eb4da3 Add ability to check shared with bot user/chat. 2023-01-31 16:52:05 +03:00
levlam
ade5a089e9 Implement ReplyMarkup::check_shared_dialog. 2023-01-31 16:40:51 +03:00
levlam
4d70d1e920 Minor improvements. 2023-01-31 13:33:30 +03:00
levlam
0469ac0147 Add inputChatPhotoSticker. 2023-01-30 00:35:14 +03:00
levlam
25cdd0e6ec Ignore message_thread_id for channel posts. 2023-01-26 01:12:23 +03:00
levlam
f9b81efe4b Replace result with "Request Aborted" error only if it is successful. 2023-01-25 19:58:23 +03:00
levlam
5cd523408d Asynchronously check local location of all viewed and opened files. 2023-01-25 19:25:04 +03:00
levlam
57548741c4 Send updateNewMessage after file upload has started. 2023-01-25 13:03:57 +03:00
levlam
0feb0f15ce Improve names of methods and message contents related to sharing user/chat with a bot. 2023-01-23 18:19:35 +03:00
levlam
136a50d0ae Add translateMessageText. 2023-01-23 15:46:26 +03:00
levlam
a7e4c54f63 Support stickers in setChatPhoto. 2023-01-23 13:53:23 +03:00
levlam
8137572794 Send updateChatIsTranslatable when premium is switched on or off. 2023-01-20 12:57:06 +03:00
levlam
337aef5c02 Support chat.is_translatable, toggleChatIsTranslatable and updateChatIsTranslatable. 2023-01-20 12:38:25 +03:00
levlam
8c43a7c0bb Add TranslationManager. 2023-01-18 14:47:31 +03:00
levlam
7288e90211 Untie can_send_messages right from other rights. 2023-01-17 18:13:27 +03:00
levlam
91ab399946 Improve repair of unread reaction count. 2023-01-16 20:30:52 +03:00
levlam
24786e05d0 Improve error messages. 2023-01-16 16:55:05 +03:00
levlam
14fbdf5928 Forcely load chosen chat from database. 2023-01-13 17:47:08 +03:00
levlam
97cc57a25c Add td_api::sendChosenChat. 2023-01-13 17:16:16 +03:00
levlam
0b54e28467 Add td_api::sendChosenUser. 2023-01-13 17:03:35 +03:00
levlam
83403d9836 Add keyboardButtonTypeRequestChat. 2023-01-11 16:54:46 +03:00
levlam
06a432a373 Add td_api::messageChatChosen. 2023-01-10 16:20:30 +03:00
levlam
f0d0ac6b78 Allow to create forum supergroups. 2023-01-09 21:43:51 +03:00
levlam
ad8ecec67c Support separate chat permissions for different media types. 2023-01-06 14:16:34 +03:00
levlam
050a11ece7 Update layer to 152. 2023-01-06 12:42:16 +03:00
levlam
1588f0d687 Return after call to on_error. 2023-01-18 17:10:08 +03:00
levlam
42af57ee05 Support General topic in getMessageThread. 2023-01-17 15:34:31 +03:00
levlam
ad8f0c4146 Improve some spelling. 2023-01-16 12:59:43 +03:00
levlam
45ff12ca49 Improve PTS/QTS spelling. 2023-01-15 11:05:53 +03:00
levlam
3b6874818a Always wait for mailbox. 2023-01-11 01:08:22 +03:00
levlam
ac0de06b5f Ensure that PTS/QTS updates are null after processing. 2023-01-09 13:27:28 +03:00
levlam
4a5b2ac722 Skip returned by server messages, not matching the filter. 2023-01-04 13:18:38 +03:00
levlam
887ddbd88e Improve warnings about changed MessageForwardInfo. 2023-01-04 10:49:53 +03:00
levlam
29c264df59 Log number of unprocessed updateMessageID while closing. 2023-01-02 19:07:48 +03:00
levlam
686fcc1933 Log source for failed to add awaited messages. 2023-01-02 18:05:35 +03:00
levlam
12561229fe Improve logging in on_get_channel_difference. 2023-01-02 17:36:38 +03:00
levlam
0f05e72fa3 Silently ignore PERSISTENT_TIMESTAMP_INVALID errors for channels.getDifference. 2023-01-02 17:06:26 +03:00
levlam
cf1984844b Update copyright year. 2023-01-01 00:28:08 +03:00
levlam
24a67cb67c Send typings to General topic by default in forums. 2022-12-30 04:00:52 +03:00
levlam
e4c8eb376e Fix spoiler in on_upload_message_media_success. 2022-12-30 02:39:31 +03:00
levlam
86f0de23f5 Improve message-TTL-related log messages. 2022-12-28 21:59:41 +03:00
levlam
90b6403e86 Improve message_auto_delete_time field and class names. 2022-12-28 21:46:16 +03:00
levlam
a77c7d566c Avoid duplicate 't' and 'i' photo sizes. 2022-12-28 20:39:24 +03:00
levlam
6aa4558850 Improve return value of searchCallMessages. 2022-12-28 19:17:25 +03:00