Commit Graph

2040 Commits

Author SHA1 Message Date
levlam
5c59a10418 Move game-related methods to GameManager. 2021-09-07 10:45:01 +03:00
levlam
0ec10947d5 Fix some misprints. 2021-09-06 13:58:40 +03:00
levlam
96ffd57881 Use Promise isntead of RequestOnceActor to get games high scores. 2021-09-05 10:54:20 +03:00
levlam
db4f963a68 Fix via_bot_user_id in game messages forwarded by the bot itself. 2021-09-02 22:21:26 +03:00
levlam
5a56ecea2a Remove pessimizing std::move. 2021-09-02 11:28:50 +03:00
levlam
b1db807868 Add forwardMessages.only_preview. 2021-08-31 23:37:21 +03:00
levlam
23a4c2c8a8 Return Message objects from send_message/forward_messages. 2021-08-31 22:34:46 +03:00
levlam
548ab8d7ee Add MessagesManager::get_forwarded_messages. 2021-08-31 20:39:32 +03:00
levlam
70a9d555a0 Split copied and forwarded new_media_album_ids just in case. 2021-08-31 20:09:00 +03:00
levlam
87e003916c Add MessagesManager::fix_forwarded_message. 2021-08-31 19:42:37 +03:00
levlam
52d605ed4d Add MessagesManager::create_message_forward_info. 2021-08-31 19:12:24 +03:00
levlam
dec26260d3 Add const MessagesManager::create_message_to_send. 2021-08-31 17:26:51 +03:00
levlam
f6fc10ab22 Add updateChatTheme. 2021-08-27 20:36:40 +03:00
levlam
abcfe46275 Fix MessageContentType::ChatSetTheme support. 2021-08-27 19:29:58 +03:00
levlam
c20fd1dd91 Add td_api::setChatTheme. 2021-08-27 19:23:22 +03:00
levlam
021474e8be Add chatEventThemeChanged. 2021-08-27 11:53:50 +03:00
levlam
5cfabdd589 Add chat.theme_name. 2021-08-23 18:47:32 +03:00
levlam
b4dc516b44 Add unread_count to MessageThreadInfo. 2021-08-13 18:24:00 +03:00
levlam
84be6f4485 Update layer to 132. 2021-08-12 21:15:08 +03:00
levlam
43d837df4e Call MessagesManager::on_load_folder_dialog_list_fail only once. 2021-08-12 16:33:39 +03:00
levlam
d9aa50e1be Use get_dialogs_from_list instead of get_dialogs. 2021-08-12 15:16:13 +03:00
levlam
307344da1c Remove promise from load_folder_dialog_list. 2021-08-11 16:32:00 +03:00
levlam
d49fdf3261 Remove offset from getChats and respect app-specified limit. 2021-08-11 15:59:09 +03:00
levlam
c35321b98e Add loadChats method. 2021-08-10 17:52:31 +03:00
levlam
fcfbb38f63 Fix MessageId::is_valid_scheduled. 2021-08-25 11:29:57 +03:00
levlam
8559392f6f Fix Dialog pts in run_after_channel_difference. 2021-08-25 11:21:17 +03:00
levlam
628648cd6c Use set_dialog_last_pinned_message_id instead of on_update_dialog_last_pinned_message_id. 2021-08-25 11:09:24 +03:00
levlam
dbdf69d076 Simplify on_update_dialog_last_pinned_message_id. 2021-08-25 11:03:07 +03:00
levlam
0f50f7a0f4 Ensure that channel Dialog exists before setting retry timeout. 2021-08-19 08:57:01 +03:00
levlam
d161323858 Add delay before reading history on server in non-joined channels with wrong server_unread_count. 2021-08-15 14:46:19 +03:00
levlam
9a5872fe27 Use update receive time to calculate proper gap time. 2021-08-15 12:46:38 +03:00
levlam
e62655efdf Add message.has_timestamped_media. 2021-08-13 14:49:24 +03:00
levlam
1885d232a9 Add parameter is_message_in_dialog to update_message. 2021-08-13 13:36:07 +03:00
levlam
4b06cb9f08 Avoid reply and bot commands registration for messages not in Dialog. 2021-08-13 13:19:58 +03:00
levlam
bff8f7550f Return MessageThreadInfo from GetDiscussionMessageQuery. 2021-08-13 12:26:47 +03:00
levlam
394e3450de Send updateMessageContent only for message known to the app. 2021-08-10 16:18:08 +03:00
levlam
bed3448fe1 Don't store server-generated message links. 2021-08-10 15:58:39 +03:00
levlam
db9db0eff1 Improve for_group flag in media timestamp links. 2021-08-09 20:47:03 +03:00
levlam
4b631b16bf Find MediaTimestamp entities in old messages. 2021-08-09 19:37:47 +03:00
levlam
0c3a9aebd8 Fix CHECK. 2021-08-09 17:48:57 +03:00
levlam
eee773901c Update max_reply_media_timestamp in replies when needed. 2021-08-06 05:55:43 +03:00
levlam
40d953ba20 Init max media timestamps for scheduled messages. 2021-08-05 10:41:13 +03:00
levlam
0e6584db87 Send updateChatLastMessage if content of the last yyet unsent message changes. 2021-08-05 10:13:06 +03:00
levlam
4ae305d8c4 Update max_media_timestamp when message content is changed. 2021-08-05 09:59:43 +03:00
levlam
9653cc9e3e Add separate get_message_content_media_duration. 2021-08-05 02:09:04 +03:00
levlam
da3b8f93a0 Hide too big media timestamps. 2021-08-04 09:28:53 +03:00
levlam
304280df69 Add message.can_get_media_timestamp_links. 2021-08-04 07:57:27 +03:00
levlam
389e92f1f4 Add skip_media_timestamps parameter to get_formatted_text. 2021-07-26 22:48:33 +03:00
levlam
3c7cf84216 Don't call ExportChannelMessageLinkQuery for bots. 2021-08-07 09:10:28 +03:00
levlam
5a8f8fbe82 Support awaited updates with promise in process_get_channel_difference_updates. 2021-08-06 07:07:03 +03:00
levlam
2f5020ad02 Improve logging. 2021-08-06 06:54:44 +03:00
levlam
0dc42e4410 Add source to get_message_sender_object. 2021-08-03 01:58:02 +03:00
levlam
9e7bce1b06 Don't warn about sent message ID decrease after message ID overflow. 2021-08-02 07:21:36 +03:00
levlam
d1b985430c Add source to ContactsManager::load_user_full. 2021-08-02 06:14:59 +03:00
levlam
34e9dc11d6 Init message_ttl_setting in all writable chats. 2021-08-02 06:07:38 +03:00
levlam
6ef446c642 Postpone updates in unknown channels with running getDifference. 2021-08-02 05:52:47 +03:00
levlam
3156492c2f Add source to ContactsManager::load_channel_full. 2021-08-02 05:50:52 +03:00
levlam
1299bc67d4 Load at most 10 messages from the server to repair last message ID if there is no database. 2021-08-02 04:19:19 +03:00
levlam
b02c9a3627 Get history after channelDifference, only if this is still needed after processing postponed responses. 2021-08-02 04:04:32 +03:00
levlam
1223c72741 Add class EncryptedFile. 2021-08-01 06:17:51 +03:00
levlam
966e8b1311 Simpler empty class creation. 2021-07-31 09:52:23 +03:00
levlam
cbb496675d Check that new messages received in the correct order in channelDifference. 2021-07-31 08:18:19 +03:00
levlam
09cab2b846 Apply awaited sent messages before they are deleted. 2021-07-31 08:07:26 +03:00
levlam
3e2d900e29 Check validness of updates in channelDifference. 2021-07-31 05:18:59 +03:00
levlam
11c3a16353 Check update type once in process_get_channel_difference_updates. 2021-07-31 04:55:05 +03:00
levlam
5171d793d0 Don't set have_next to true if all next messages were deleted. 2021-07-30 17:50:28 +03:00
levlam
93ac629a74 Save is_channel_difference_finished for uncreated dialogs. 2021-07-30 06:04:31 +03:00
levlam
77c20cd82f Run channelDifference before messages can be added to the chat. 2021-07-30 05:58:24 +03:00
levlam
fba5f2fa04 Simplify on_get_history using that d != nullptr since 31 Aug 2016. 2021-07-30 05:40:13 +03:00
levlam
ed15c1078b Apply postponed channel updates even Dialog wasn't created. 2021-07-30 04:56:39 +03:00
levlam
50052f63ef Don't update message if edit_date decreased. 2021-07-30 04:49:04 +03:00
levlam
c2028aed4f Add limit on maximum videoNote size. 2021-07-29 23:39:07 +03:00
levlam
f0333aa578 Postpone updates in unknown channel instead of dropping. 2021-07-29 21:43:03 +03:00
levlam
bc8544299b Repeat getHistory request if some new server messages aren't received. 2021-07-29 06:07:11 +03:00
levlam
c1d69fcc32 Ensure that if Dialog is_empty, than we have_full_history. 2021-07-29 03:39:05 +03:00
levlam
c07562ed52 Repair last message after getChannelDifference if it is still unknown. 2021-07-29 03:32:08 +03:00
levlam
be53ea2e1c Move retry_get_difference_timeout out of Dialog to allow retries for unknown dialogs. 2021-07-29 02:52:59 +03:00
levlam
d5a19f0a82 Don't add last new message in on_get_dialog if it is supposed to be added through get_channel_difference. 2021-07-29 02:42:53 +03:00
levlam
645973c0a3 Avoid channel dialog creation by new updates, which can't be applied anyway. 2021-07-29 02:04:28 +03:00
levlam
91f8bb48ac Improve condition for channelDifference. 2021-07-27 01:46:22 +03:00
levlam
bc5efb771d Improve can_message_content_have_media_timestamp. 2021-07-26 04:50:08 +03:00
levlam
20a98ad7c9 Support media_timestamp in getMessageLink. 2021-07-26 04:01:10 +03:00
levlam
bfa0973dec Support media timestamp in message links. 2021-07-26 02:40:36 +03:00
levlam
8a745b3480 Add logging when identifier of being sent message decreases. 2021-07-25 05:05:48 +03:00
levlam
ecd92fa501 Fix removing from chat list empty chat. 2021-07-22 20:19:16 +03:00
levlam
562af8b4f6 Add more logging in unload_dialog. 2021-07-22 18:43:34 +03:00
levlam
4e27f67cd0 Ensure that ttl_expires_in is in a valid range. 2021-07-22 17:52:49 +03:00
levlam
aa71db8da1 Update message content when has_bots is changed. 2021-07-22 06:54:43 +03:00
levlam
ca480ecaf1 Simplify MessagesManager::send_update_message_content. 2021-07-22 05:53:39 +03:00
levlam
e0c9efc26b Skip bot command entities if needed. 2021-07-22 05:39:16 +03:00
levlam
cf579c761a Add Dialog.has_bots flag. 2021-07-22 04:10:40 +03:00
levlam
a393bc5f71 Don't send message history requests to database if no returned messages can be added. 2021-07-21 06:24:02 +03:00
levlam
bd9a03d7e8 Don't send message histor requests to database if have no first_database_message_id. 2021-07-21 06:16:30 +03:00
levlam
bf1c94ee0d Reget message history from database if it is outdated. 2021-07-19 21:38:04 +03:00
levlam
3d84afbea8 Add get_history methods, which with Dialog as parameter. 2021-07-19 20:56:30 +03:00
levlam
4caf74a86f Don't repair last message by getHistory in a chat created by new message. 2021-07-18 06:16:08 +03:00
levlam
345b4d3ba1 Improve error message. 2021-07-18 03:20:52 +03:00
levlam
576724f234 Don't fill gaps in non-joined never opened channels. 2021-07-14 22:53:30 +03:00
levlam
e74cdb3de6 Add logging when a chat isn't marked as empty, despite having no server messages. 2021-07-14 22:18:27 +03:00
levlam
ae01af88c3 Continue to get history from the database or drop last_database_message_id if it seems to be wrong. 2021-07-14 22:13:28 +03:00
levlam
8f8e260521 Use last received message ID to adjust last_database_message_id, if there were no messages added. 2021-07-14 21:49:35 +03:00
levlam
69072e1a8f If last received from database message is first_database_message, but it fails to be added, then drop database message IDs anyway. 2021-07-14 21:31:53 +03:00
levlam
4f37b10783 Postpone loading history from database after the last message is deleted to process deletions of other messages first. 2021-07-14 21:24:15 +03:00
levlam
7e2554d9ac Don't reload all messages with web pages from the server. 2021-07-08 17:37:23 +03:00
levlam
0dc4b5a469 Add source to get_messages_from_server. 2021-07-08 17:09:16 +03:00
levlam
1af1836e8f Remove action bar after unarchiving group chats. 2021-07-07 20:04:18 +03:00
levlam
b18b5309b6 Minor improvements. 2021-07-05 19:28:39 +03:00
levlam
40c5d47717 Make inherited classes final if possible. 2021-07-04 05:58:54 +03:00
levlam
edfa5d1d98 Use final instead of override. 2021-07-03 23:51:36 +03:00
levlam
50a8e66965 Improve error messages. 2021-06-26 04:20:59 +03:00
levlam
50d2d0ff00 Don't init last_new_message_id with max_unavailable_message_id.
The message with last_new_message_id must be the latest existing server message,
after which all messages will be received through updates.
2021-06-25 03:26:59 +03:00
levlam
4c49acc440 Explicitly use mentioned function instead of a comment. 2021-06-24 23:17:13 +03:00
levlam
5c622801f6 Expect no access to message sender chat. 2021-06-24 22:13:57 +03:00
levlam
df12ea836b Create sender_dialog_id if possible. 2021-06-23 13:11:05 +03:00
levlam
9940dd74db Remove botInfo class from API. 2021-06-21 04:14:29 +03:00
levlam
9440925711 Move some classes inside corresponding managers. 2021-06-18 03:06:20 +03:00
levlam
d069de6a8b Drop channel pts in inaccessible channels. 2021-06-16 02:54:17 +03:00
levlam
197992da2c Add logging on failed check. 2021-06-09 00:56:08 +03:00
levlam
d80b613b55 Remove support for secret chat layers before 73. 2021-06-08 18:31:29 +03:00
levlam
4b2c948a99 Minor. 2021-06-04 02:18:57 +03:00
levlam
a96bf1531a Use FullMessageId in get_login_button_url. 2021-06-03 23:37:56 +03:00
levlam
126a20c318 Reload voice chat when user opens a voice chat link. 2021-06-03 20:16:14 +03:00
levlam
9cecc116f3 Prefer US spelling of "canceled". 2021-05-31 21:51:48 +03:00
levlam
374b7eeaec Disable notifications about messages sent before authorization just in case. 2021-05-29 23:08:08 +03:00
levlam
5832a59ee5 Move get_message_link_info to LinkManager. 2021-05-27 20:47:04 +03:00
levlam
2d534e48d6 Move get_dialog_invite_link_hash to LinkManager. 2021-05-27 20:31:06 +03:00
levlam
d6e3a56ab8 Use LinkManager::get_link_info in get_message_link_info. 2021-05-25 17:16:50 +03:00
levlam
acd6caae9b Add class td_api::InternalLinkType and parse some intenal links. 2021-05-25 17:06:27 +03:00
levlam
62db52a23e Move LoginUrl-related methods to LinkManager. 2021-05-25 02:39:29 +03:00
levlam
a6a4eb6616 Don't include SliceBuilder.h in logging.h. 2021-05-17 15:21:11 +03:00
levlam
8a7a3f403b Try to create secret chat dialog when receive new message in it. 2021-05-16 02:11:37 +03:00
levlam
eecb0476b5 Unify error messages for private and secret chats. 2021-05-10 19:36:18 +03:00
levlam
260eee8bff Avoid upgrade of read transaction to a write transaction. 2021-05-10 01:59:35 +03:00
levlam
9176381cff Add debug for failed CHECK. 2021-05-09 18:43:39 +03:00
levlam
6baf923f07 Fix handling of left dialogs, which are still pinned in filters. 2021-05-09 00:31:43 +03:00
levlam
3c81a4efef Fix reply_to_message_id in service messages. 2021-04-14 14:54:09 +03:00
levlam
6b0637f402 Disallow messageInvoice copying. 2021-04-13 17:40:09 +03:00
levlam
20096b3bb1 Add check that invoice message has Pay button. 2021-04-13 03:05:02 +03:00
levlam
7dbe720fdc Move can_send_message_content to MessageContent.cpp. 2021-04-13 02:59:33 +03:00
levlam
2ddeead75f Save expected active group call ID. 2021-04-12 02:49:28 +03:00
levlam
47a7bc05e2 Use service messages to synchronize active group call state. 2021-04-11 05:37:53 +03:00
levlam
969b52cc82 Minor improvements. 2021-04-09 02:35:50 +03:00
levlam
3f1e91e7f4 Support invoice receipts in another chats. 2021-03-31 15:36:25 +03:00
levlam
9700529085 Remove payments proxy methods from MessagesManager. 2021-03-31 04:15:02 +03:00
levlam
3ac49bc8b1 Pass Td to all payments method. 2021-03-31 03:18:00 +03:00
levlam
aa65e2b586 Allow to send invoice messages in all chat types. 2021-03-31 02:45:10 +03:00
levlam
f1b949456b Support tip sending. 2021-03-30 18:45:22 +03:00
levlam
17e8860855 Add paymentForm.id. 2021-03-30 17:18:08 +03:00
levlam
26dc0ad930 Update layer to 127. 2021-03-26 18:15:21 +03:00
levlam
adedc7ad4f Support chats as members of other chats. 2021-03-22 04:03:24 +03:00
levlam
9964d24ec8 Check permissions for all chat types in can_send_message_content. 2021-04-13 00:49:27 +03:00
levlam
c7b0063260 Add source to parse_dialog. 2021-04-12 06:04:43 +03:00
levlam
1934bf3b0e Fix repairing unread count in fix_new_dialog. 2021-04-12 05:58:24 +03:00
levlam
5ec3b9cfce Init MessagesManager on first call to get_dialog_force. 2021-04-12 05:11:06 +03:00
levlam
bdb7c833fd Improve fatal error message. 2021-04-12 04:42:42 +03:00
levlam
550ccc8d9b Move left chats to a correct ordered_dialogs_ list. 2021-04-09 01:49:27 +03:00
levlam
51581b8d03 Minor. 2021-04-09 01:11:44 +03:00
levlam
a2e6a242f1 Fix getChatEventLog filter flags. 2021-04-08 23:01:12 +03:00
levlam
af1b774ffb Replace sender in messages sent by anonymous bot with the group itself. 2021-04-08 15:22:28 +03:00
levlam
2f687edf17 Don't decrease max_unavailable_message_id when processing MessageDeleteChatHistory. 2021-04-08 03:06:05 +03:00
levlam
5e7f0e8849 Remove unneeded logging. 2021-04-08 02:25:24 +03:00
levlam
525f72263d Delete old messages using set_dialog_max_unavailable_message_id when receive MessageChatDeleteHistory. 2021-04-08 02:19:14 +03:00
levlam
9ea4bc3476 Delete from database loaded messages in cleared history part. 2021-04-08 01:59:44 +03:00
levlam
a0dcd2d9c2 Add optional source to have_dialog_force. 2021-04-08 00:51:32 +03:00
levlam
0a0c9a6f96 Add optional source to get_dialog_force. 2021-04-08 00:42:21 +03:00
levlam
5a7015b9fe Improve CHECK messages. 2021-04-07 23:43:24 +03:00
levlam
ad17a75f28 Add source to add_new_dialog. 2021-04-07 23:35:09 +03:00
levlam
55662f5db6 Add CHECK debug. 2021-04-06 12:33:08 +03:00
levlam
a54be3de0d Improve logging. 2021-04-05 21:26:14 +03:00
levlam
d3030445c5 Improve logging. 2021-04-04 23:31:08 +03:00
levlam
2246b81d6f Immediately delete already deleted sent message instead of storing updateMessageID. 2021-04-04 23:23:08 +03:00
levlam
0b53ace8d0 Improve deletion of deleted being sent messages. 2021-04-04 22:59:56 +03:00
levlam
d44e9e5577 Add source to delete_dialog_messages. 2021-04-04 03:54:27 +03:00
levlam
8039660cfe Reload objects from server if failed to resolve their dependencies. 2021-04-04 03:23:22 +03:00
levlam
6dfe45c03c Fix unpinning of unknown chats. 2021-04-04 01:59:45 +03:00
levlam
84194768ae Add check that chats aren't created before MessagesManager is inited. 2021-04-03 22:41:26 +03:00
levlam
5a885bd06d Add more logging. 2021-04-03 02:46:56 +03:00
levlam
bee68243e8 Fix CHECK. 2021-04-03 02:19:30 +03:00
levlam
e75d8ccadc Add check. 2021-04-01 21:27:40 +03:00
levlam
ffab6fe018 Remove top_thread_message_id from scheduled messages. 2021-04-01 21:10:25 +03:00
levlam
5508721497 Use add_message_dependencies to reliably find all dependent dialogs. 2021-03-31 16:17:25 +03:00
levlam
1bb13c0ab3 Remove unused parameter in add_message_dependencies. 2021-03-31 16:07:45 +03:00
levlam
13a80bc4e8 Use send_closure_later to avoid cycles in add_message_to_dialog. 2021-03-29 22:36:29 +03:00
levlam
955ce5f946 Improve error message. 2021-03-29 22:25:06 +03:00
levlam
732193b346 Fix default last_new_message_id in secret chats, broken in 9948e41aed. 2021-03-29 20:52:59 +03:00
levlam
c739df8507 Pass UserId instead of int32 when creating secret chat. 2021-03-29 11:57:26 +03:00
levlam
9936cdc320 Fix handling of speaking in group call chat actions. 2021-03-28 04:03:00 +03:00
levlam
307821eb31 Never treat closed secret chats as just created. 2021-03-28 03:46:45 +03:00
levlam
879fd3b7c0 Use add_message_sender_dependencies for default group call alias. 2021-03-28 01:55:39 +03:00
levlam
b84318fed4 Minor improvements. 2021-03-27 05:19:22 +03:00
levlam
6656cd29f9 Add version to GroupCallParticipant. 2021-03-19 02:44:20 +03:00
levlam
12a755d921 Don't ignore update about ended group call if group call is being joined. 2021-03-19 01:28:18 +03:00
levlam
62c9890bcf Support url_auth_domains. 2021-03-16 01:29:54 +03:00
levlam
95391dc705 Improve logging. 2021-03-15 16:42:03 +03:00
levlam
0339921102 Improve some spelling. 2021-03-15 03:32:14 +03:00
levlam
574884510b Use MessageSender as participant_alias. 2021-03-08 18:08:41 +03:00
levlam
f24ca02f37 Add td_api::voiceChat class. 2021-03-08 17:00:39 +03:00
levlam
159c4f3f00 Remove race in default_join_as updating. 2021-03-08 15:27:47 +03:00
levlam
4eab57cd7b Add chat.default_join_voice_chat_as_chat_id. 2021-03-08 15:13:36 +03:00
levlam
caa1db85ab Prevent race in updating of joined voice chat. 2021-03-07 02:21:08 +03:00