Commit Graph

1210 Commits

Author SHA1 Message Date
levlam
0e33195953 Move static get_message_id/get_message_dialog_id to corresponding classes. 2022-12-12 21:43:49 +03:00
levlam
b634948c15 Move static MessageId helpers to MessageId class. 2022-12-10 22:57:41 +03:00
levlam
6cbe1825ef Delete left dialogs from filters. 2022-12-08 13:14:50 +03:00
levlam
a32bb3e7ef Move get_messages_info to MessagesInfo.cpp. 2022-12-07 19:38:42 +03:00
levlam
75453b542f Add separate header for MessagesInfo. 2022-12-07 19:28:27 +03:00
levlam
1db1532591 Add is_forum_channel. 2022-12-07 17:21:36 +03:00
levlam
70cfbab277 Extract only relevant random_id from updates. 2022-12-02 12:36:31 +03:00
levlam
f8a5f42886 Improve return value of UpdatesManager::get_new_messages. 2022-12-02 12:11:07 +03:00
levlam
2844156dfc Allow to specify message_ttl during creation of basic group and channel chats. 2022-11-29 15:44:12 +03:00
levlam
8b11ef9aa3 Apply message_ttl from telegram_api::dialog. 2022-11-29 13:08:06 +03:00
levlam
0f357cdb95 Apply information about forum topics from messages.channelMessages. 2022-11-15 16:00:19 +03:00
levlam
af05db3f15 Add td::Hash and use it everywhere instead of unusable std::hash. 2022-11-23 19:37:32 +03:00
levlam
0455f8cfbb Skip too old channel difference for bots. 2022-11-23 13:21:46 +03:00
levlam
68627a0c3f Add source to cancel_upload_file. 2022-11-21 14:33:19 +03:00
levlam
830806937e Improve source type in on_get_channel_error/on_get_dialog_error. 2022-11-17 14:18:11 +03:00
levlam
b2b59b02be Add draft of history generation for better gap handling. 2022-11-14 20:12:23 +03:00
levlam
f670d646c9 Unload at most 5000 messages at a time. 2022-11-11 16:06:05 +03:00
levlam
8e32de133a Rename MessagesDb to MessageDb. 2022-11-09 20:35:22 +03:00
levlam
ef5107fcc4 Remove unused from_cache parameter in send_update_delete_messages. 2022-11-08 13:43:46 +03:00
levlam
36686c29a6 Remove unused Status responses in MessagesDb. 2022-11-07 22:19:44 +03:00
levlam
7df7dfcd62 Output main chat list position along with all folder identifiers. 2022-11-04 17:40:44 +03:00
levlam
ce09421718 Update main chat list position after adding or deleting chat lists. 2022-11-04 17:26:41 +03:00
levlam
ff0c205fe9 Generate new links for topic messages. 2022-11-04 15:56:16 +03:00
levlam
8f9275858f Fix warning. 2022-11-04 13:20:22 +03:00
levlam
f8783063f3 Improve parameter name. 2022-11-03 19:37:07 +03:00
levlam
e8d1c7deae Remove from_updates parameter from delete_dialog_messages. 2022-11-03 19:26:22 +03:00
levlam
df45195cc6 Split delete_dialog_messages in two functions. 2022-11-03 19:14:35 +03:00
levlam
17bc097d12 Destroy deleted messages on another thread. 2022-11-03 18:10:51 +03:00
levlam
69f03d8376 Improve message reply header handling. 2022-11-02 06:28:35 +03:00
levlam
342f446631 Support unpinning of all messages in a message thread. 2022-10-31 19:44:01 +03:00
levlam
43deaf4502 Add td_api::deleteForumTopic. 2022-10-30 00:35:37 +03:00
levlam
6acdfbdf9e Keep information about dropped MessageReplyInfo. 2022-10-29 20:18:49 +03:00
levlam
ff43a82359 Improve topic message detection. 2022-10-29 02:05:31 +03:00
levlam
4c7e9ad8a6 Add Message.is_topic_message. 2022-10-28 12:43:51 +03:00
levlam
8f0d216601 Don't update channel pts if failed to process updateEditChannelMessage. 2022-10-26 14:52:51 +03:00
levlam
75739dd0ea Allow to pass message thread identifier to readAllChatReactions. 2022-10-24 17:04:05 +03:00
levlam
df561b7822 Allow to pass message thread identifier to readAllChatMentions. 2022-10-24 16:57:26 +03:00
levlam
62bcac0198 Support forwarding of messages to message threads. 2022-10-21 18:02:39 +03:00
levlam
c941f488a0 Proxy speech recognition methods through MessagesManager. 2022-10-19 17:56:18 +03:00
levlam
177b5f1e89 Pass top_thread_message_id to server methods for message sending. 2022-10-18 14:23:46 +03:00
levlam
4067ba66d3 Improve backward compatibility. 2022-10-17 15:44:30 +03:00
levlam
897032e0fd Add support for multiple usernames. 2022-10-12 21:04:18 +03:00
levlam
88ffdb62e7 Split NotificationSettings.h. 2022-10-25 01:22:04 +03:00
levlam
9b16702674 Add ContactsManager::get_dialog_search_text. 2022-10-11 20:35:35 +03:00
levlam
62403aac3c Simplify username caching. 2022-10-11 15:13:06 +03:00
levlam
b1f2e553cb Explicitly fail some promises stored in MessagesManager. 2022-10-07 01:28:18 +03:00
levlam
8d1ee490ad Update response of getChatAvailableMessageSenders. 2022-10-04 17:53:56 +03:00
levlam
af5ddbfa15 Use WaitFreeHashMap for resolved_usernames. 2022-10-04 14:53:46 +03:00
levlam
1f7258f697 Add getChatMessagePosition. 2022-09-30 20:04:21 +03:00
levlam
92f9f8bdd0 Support extended media polling. 2022-09-24 22:17:17 +03:00
levlam
7f353cd064 Support telegram_api::updateMessageExtendedMedia. 2022-09-23 12:07:07 +03:00
levlam
23fe3994bf Don't unload messages from the last media album. 2022-09-21 17:44:25 +03:00
levlam
bb6fc999f8 Add on_message_notification_changed function. 2022-09-19 16:19:59 +03:00
levlam
618bface99 Save voice message to database when it is recognized. 2022-09-19 11:15:13 +03:00
levlam
8d0cb5b82d Return is_content_changed from update_message_content. 2022-09-19 01:12:20 +03:00
levlam
51403c883c Avoid usage of send_update_message_content with dialog_id. 2022-09-19 00:29:31 +03:00
levlam
91c54cc748 Move send_update_message_content out of update_message_content. 2022-09-19 00:24:15 +03:00
levlam
30b961aebf Sort reactions returned in getMessageAvailableReactions. 2022-09-13 19:19:35 +03:00
levlam
55ec944266 Pass all chosen reactions to send_message_reaction. 2022-09-09 16:21:00 +03:00
levlam
6b2f6b4204 Split setMessageReaction to addMessageReaction and removeMessageReaction. 2022-09-09 15:56:45 +03:00
levlam
4ae5b9a533 Consistently use is_active_reaction. 2022-09-08 21:04:23 +03:00
levlam
148f1bf794 Update get_message_available_reactions. 2022-09-08 20:04:32 +03:00
levlam
c6d5bbb151 Remove class AvailableReaction. 2022-09-08 17:45:19 +03:00
levlam
9bd566702e Add source to MessagesManager::fix_new_dialog. 2022-09-07 20:02:44 +03:00
levlam
4fdac24cc5 Add setMessageReaction.update_recent_reactions. 2022-09-05 22:04:50 +03:00
levlam
16ba2ebfb8 Add messageSendOptions.update_order_of_installed_sticker_sets. 2022-09-04 01:14:25 +03:00
levlam
c662b81a3d Return ChatReactions from MessagesManager::get_message_active_reactions. 2022-09-02 18:59:15 +03:00
levlam
c65af3ac6e Improve field name. 2022-08-31 11:11:37 +03:00
levlam
0b8e143056 Add class ChatAvailableReactions. 2022-08-30 11:45:27 +03:00
levlam
408a6a9d74 Remove failed to load chats from chat filters. 2022-08-30 01:18:20 +03:00
levlam
d110b0f5bc Add MessagesManager::load_dialog_filter_dialogs function. 2022-08-29 22:43:36 +03:00
levlam
9f564e48d4 Improve MessageForwardInfo logging. 2022-08-29 07:10:50 +03:00
levlam
57d7a2b10c Remove unknown pinned secret chats if failed to load them. 2022-08-27 23:12:50 +03:00
levlam
0ed8f95cec Make distribution of dialog unloads uniform instead of normal. 2022-08-27 11:19:00 +03:00
levlam
b359a09464 Add message.can_report_reactions. 2022-08-23 16:44:20 +03:00
levlam
bb2034ae36 Update layer to 145. 2022-08-08 23:00:06 +03:00
levlam
8c5833b009 Delete yet unsent message if receive messageEmpty for the sent message. 2022-08-21 10:08:09 +03:00
levlam
acbc2cebf4 Process request result in MessagesManager actor context. 2022-08-21 07:24:53 +03:00
levlam
092499a7c6 Use WaitFreeHashSet where appropriate. 2022-08-21 00:20:57 +03:00
levlam
f99327ca50 Add more CHECK logging. 2022-08-19 00:00:32 +03:00
levlam
04b98aa385 Use OptionManager directly if possible. 2022-08-18 17:00:18 +03:00
levlam
17a18e8def Always use send_closure_later to keep relative message order. 2022-08-10 16:25:17 +03:00
levlam
8e5d85eb11 Add error logging. 2022-08-08 19:52:29 +03:00
levlam
d04527d10e Avoid expected error logging. 2022-08-08 13:19:11 +03:00
levlam
515bd488fb Use WaitFreeHashMap for dialogs. 2022-08-04 17:38:33 +03:00
levlam
699b421824 Use full variable names for unique_ptr<Dialog>. 2022-08-04 16:30:14 +03:00
levlam
898c5c5cf3 Improve error message. 2022-08-02 19:35:35 +03:00
levlam
3f1e0a9317 Add explicit limit on the number of saved auth notifications. 2022-08-01 01:39:09 +03:00
levlam
ddb572b830 Add more debug for have_full_history. 2022-07-15 17:03:40 +03:00
levlam
0f87447ffc Asynchronously destroy some big data storages. 2022-07-20 13:40:14 +03:00
levlam
8537b3d495 Move MultiTimeout to MultiTimeout.h. 2022-07-02 23:32:18 +03:00
levlam
32bac7bd24 Move Promise to tdutils. 2022-06-27 13:30:18 +03:00
levlam
638b4346ca Remove separate MessagesManager::on_update_scheduled_message_id. 2022-06-23 17:05:43 +03:00
levlam
80df1e2968 Add notificationTypeNewMessage.show_preview. 2022-06-16 18:54:50 +03:00
levlam
83fdbd7859 Move some AvailableReaction methods to AvailableReaction.h. 2022-06-09 01:48:39 +03:00
levlam
cb98c0a10a Add class AvailableReaction. 2022-06-09 01:07:53 +03:00
levlam
2570044eba Return, whether available reaction needs premium. 2022-06-08 17:34:13 +03:00
levlam
e336819ac8 Add and use "chat_filter_count_max" option. 2022-05-23 18:26:54 +03:00
levlam
2f186a9eeb Allow to change position of main chat list for premium users. 2022-05-19 21:19:06 +03:00
levlam
9f8de1d146 Add main_chat_list_position to updateChatFilters. 2022-05-19 16:57:11 +03:00
levlam
9092c58af7 Update replied message identifier in delete_sent_message_on_server. 2022-05-18 19:10:48 +03:00
levlam
2345933422 Fix chat to send messages as from a web app. 2022-04-26 17:13:31 +03:00
levlam
cfc20397a0 Update layer to 143. 2022-04-19 17:43:24 +03:00
levlam
72f3288bec Add source to get_history_from_the_end_impl. 2022-05-31 16:33:37 +03:00
levlam
bcea804864 Keep chat position if failed to add last message to it. 2022-05-31 15:39:41 +03:00
levlam
16959e33e4 Use WaitFreeHashMap for message_id_to_dialog_id_. 2022-05-19 19:34:48 +03:00
levlam
1616513c4c Add and use MessagesManager::is_deleted_message. 2022-05-18 12:16:32 +03:00
levlam
0bf2aaf4f2 Resolve identifiers of being added secret messages by their random_id. 2022-05-17 16:19:39 +03:00
levlam
f53f750b39 Change replied message ID from yet unsent to persistent after the message is sent. 2022-05-17 15:06:40 +03:00
levlam
bf37753056 Keep reply_to_message_id for forwards to secret chats. 2022-05-16 21:10:18 +03:00
levlam
26ceefb2d4 Keep reply_to_message_id for yet unsent messages between restarts. 2022-05-16 19:47:06 +03:00
levlam
190117c839 Add local reply_to_message_id to forwarded by the server messages. 2022-05-16 18:11:49 +03:00
levlam
5a1a64764b Add check that there are no two new chats added simultaneously. 2022-05-15 10:53:06 +03:00
levlam
3d796860d2 Use server-side forward as copy. 2022-05-08 23:54:04 +03:00
levlam
0a91c2b097 Remove unused argument. 2022-05-05 23:07:42 +03:00
levlam
ddbfc45925 Add MessagesManager::can_delete_dialog. 2022-04-29 14:33:35 +03:00
levlam
cdd82c67c9 Unify update variable names. 2022-04-28 18:39:05 +03:00
levlam
576c96a83d Reload number of unread reactions after receive new edited message. 2022-04-28 18:31:25 +03:00
levlam
ad65446480 Reget unread reaction count when receive update about unread reaction on unknown message. 2022-04-28 17:43:29 +03:00
levlam
17275fe422 Output the number of objects to be freed on closing. 2022-04-25 20:52:44 +03:00
levlam
13bd8044cf Add source to send_update_chat_unread_reaction_count. 2022-04-23 01:14:51 +03:00
levlam
a506382e4b Use '= {}' instead of '= Auto()'. 2022-04-18 18:21:41 +03:00
levlam
3215bb0242 Replace is_silent with sound_id in notifications. 2022-04-15 18:36:24 +03:00
levlam
2696a4abbb Restore failed to delete messages. 2022-04-12 17:34:08 +03:00
levlam
7a2b3abe18 Support new NotificationSound. 2022-04-11 20:01:44 +03:00
levlam
bb8c4ca42c Fix updating of Dialog.available_reactions_generation. 2022-04-11 16:01:30 +03:00
levlam
80d57a493f Move get_input_notify_peer to NotificationSettingsManager. 2022-04-11 13:06:16 +03:00
levlam
9fd72e86d0 Move scope notification settings tp NotificationSettingsManager. 2022-04-11 12:45:52 +03:00
levlam
88b9f35b91 Add PhotoSize.h. 2022-04-10 01:15:49 +03:00
levlam
cb5fe8c7cd Move some related to notification settings methods to NotificationSettingsManager. 2022-04-08 17:17:56 +03:00
levlam
c5d58a8158 Add source to MessagesManager::repair_server_unread_count. 2022-04-04 19:29:03 +03:00
levlam
df24a2ec90 Add td_api::openWebView. 2022-03-31 15:05:08 +03:00
levlam
358f9bb1ad Pass dialog_id to register_message_reply. 2022-03-23 18:27:17 +03:00
levlam
1f38124861 Use FlatHashSet. 2022-03-11 21:38:48 +03:00
levlam
a136a9d22b Move methods inside Dependencies class. 2022-03-11 15:10:24 +03:00
levlam
83d26f3335 Add parameter only_preview to sendMessageAlbum. 2022-02-22 22:42:46 +03:00
levlam
679b70efa5 Return message objects from MessagesManager::send_message_group. 2022-02-22 21:51:35 +03:00
levlam
4e1f2cbf8b Add td_api::searchOutgoingDocumentMessages. 2022-02-22 15:58:16 +03:00
levlam
7102117ed4 Send at most one getMessageViews query for a given message. 2022-03-07 20:17:00 +03:00
levlam
8f5bac2fe0 Reload message reactions every 15 seconds. 2022-03-07 15:20:22 +03:00
levlam
c5908619c2 Reload reactions in new viewed messages. 2022-03-07 14:27:42 +03:00
levlam
4d7afaedbb Improve DownloadManager initialization. 2022-03-01 23:09:40 +03:00
levlam
a3cef00551 DownloadManager fixes and improvements. 2022-02-27 18:23:06 +03:00
levlam
4524ba0380 Add FileReferenceManager::get_file_info. 2022-02-26 21:52:14 +03:00
levlam
21a71e6441 Minor improvements. 2022-02-25 16:18:23 +03:00
Arseny Smirnov
a59f262b26 AddFileToDownloads method 2022-02-23 20:56:03 +01:00
levlam
24d2505f5b Improve pts extraction from updates. 2022-02-16 21:18:36 +03:00
levlam
0646eb3f2e Combine reload_message_reactions queries. 2022-02-16 17:09:26 +03:00
levlam
ddf1bdc5c4 Simplify parse_message and on_get_message_from_database. 2022-02-16 01:39:20 +03:00
levlam
644971c314 Always save and update available_reactions_generation. 2022-02-15 23:25:00 +03:00
levlam
b4d5d00f1e Add available_reactions_generation and increase it each time reactions are shown or hidden in the chat. 2022-02-15 17:11:29 +03:00
levlam
ec4069b96a Sync reactions after getMessageAddedReactions if needed. 2022-02-14 11:34:12 +03:00
levlam
0d79671f15 Add MessagesManager::update_message_reactions. 2022-02-12 14:15:14 +03:00
levlam
d5d4f4acf7 Fix remaining FlatHashMap usages. 2022-02-10 18:03:03 +03:00
levlam
c88955a8b7 Load unknown messages to process updateMessageReaction. 2022-02-08 18:48:09 +03:00
levlam
bcc2adeb47 Fix includes and formatting. 2022-02-08 00:04:34 +03:00
Arseny Smirnov
86bceb2972 td: replace most of std::unordered_map usages to td::FlatHashMap 2022-02-07 21:21:31 +01:00
levlam
b845766bd1 Add class ChainId. 2022-02-05 23:28:43 +03:00
levlam
17fb8ff6fc Replace SendSecretMessageActor with a function. 2022-02-04 16:25:37 +03:00
Arseny Smirnov
ad38f712e8 SequenceDispatcher: hide usage into NetQueryDispatcher 2022-02-01 18:51:36 +03:00
levlam
abb2c1a105 Ignore reaction updates while setting reaction. 2022-01-30 12:55:27 +03:00
levlam
3150b3d491 Add readAllChatReactions. 2022-01-30 12:37:24 +03:00
levlam
3739c5b92f Replace translateMessage with translateText. 2022-01-29 23:43:57 +03:00
levlam
41a5248169 Read unread reactions. 2022-01-28 20:27:39 +03:00
levlam
5098dac338 Add and use has_unread_message_reactions. 2022-01-28 19:57:50 +03:00
levlam
71a8abb92d Implement Chat.unread_reaction_count. 2022-01-28 18:39:13 +03:00
levlam
e5084491f6 Add Message.unread_reactions. 2022-01-28 17:10:17 +03:00
Arseny Smirnov
355c2950ad ChainScheduler - new implementation of SequenceDispatcher 2022-01-28 15:50:59 +03:00
levlam
c0a2c0de8b Use get_message_active_reactions instead of get_dialog_active_reactions if appropriate. 2022-01-27 18:17:29 +03:00
levlam
f9c6fb14f6 Relaod message reactions if failed to set reaction. 2022-01-26 18:48:46 +03:00
levlam
97e0288363 Check that reaction is among available reactions before set it locally. 2022-01-26 16:51:47 +03:00
levlam
ba5c326ba8 Support sending big reactions. 2022-01-26 16:41:41 +03:00
levlam
1901eafe8a Add td_api::getMessageAvailableReactions. 2022-01-26 15:25:03 +03:00
levlam
6a288e2516 Hide reactions if they are disabled in the chat. 2022-01-26 13:49:17 +03:00
levlam
bad018bc32 Sort message reactions by the number of choosers. 2022-01-26 12:01:14 +03:00
levlam
ce19ad822b Add td_api::setMessageReaction. 2022-01-21 20:39:55 +03:00
levlam
7c4d333a77 Support updateMessageReactions. 2022-01-21 11:53:18 +03:00
levlam
739d2b292d Add MessageReactions. 2022-01-20 22:54:34 +03:00
levlam
5f14c85a33 Send updateChatAvailableReactions updates when the list of active reactions changes. 2022-01-19 20:04:59 +03:00
levlam
facb8f754a Move list of active reactions to MessagesManager. 2022-01-19 18:59:48 +03:00
levlam
4e657b73ab Return all reactions as available in private chats. 2022-01-19 18:10:16 +03:00
levlam
06a67030a0 Use reload_dialog_info_full instead of get_dialog_info_full to guarantee that the data will be reloaded. 2022-01-19 14:37:07 +03:00
levlam
8339a5818e Add td_api::translateMessage. 2022-01-14 22:28:28 +03:00
levlam
b0ad4e5e62 Add td_api::setChatAvailableReactions. 2022-01-05 16:23:35 +03:00
levlam
3becacf304 Add chat.available_reactions and updateChatAvailableReactions. 2022-01-04 16:33:57 +03:00
levlam
8085779cdc Update copyright year. 2022-01-01 03:35:39 +03:00
levlam
ed766a4d2f Add flag messageSendOptions.protect_content. 2021-12-28 18:19:19 +03:00
levlam
160ab905f1 Fix handling of min-channels in recent repliers. 2021-12-22 20:15:18 +03:00
levlam
cbc6d25a44 Replace user_id with member_id in chatEventLog. 2021-12-21 14:53:22 +03:00
levlam
4e29d0e232 Rename message_ttl_setting to message_ttl. 2021-12-21 14:06:15 +03:00
levlam
81cebe39eb Improve naming of selected message sender in a chat. 2021-12-21 13:49:26 +03:00
levlam
27a42b88c8 Save need_drop_default_send_message_as_dialog_id between restarts. 2021-12-20 22:54:20 +03:00
levlam
3f28ce86d6 Postpone drop of default message sender until the chat is opened. 2021-12-20 20:23:26 +03:00
levlam
0ab05735c0 Silence expected warnings. 2021-12-18 23:15:06 +03:00
levlam
fe6c61f2ea Workaround bogus C4753 MSVC warning. 2021-12-15 20:36:23 +03:00
levlam
9102a20665 Unload messages more often. 2021-12-13 15:32:46 +03:00
levlam
c510c4602c Skip recently sent messages in find_unloadable_messages. 2021-12-13 15:20:09 +03:00
levlam
831ca4b975 Rename allow_saving_content to has_private_content. 2021-12-06 21:43:55 +03:00
levlam
fb9bb3cd69 Save and load lists of created public channels. 2021-12-03 20:10:30 +03:00
levlam
93af4377b7 Store created public broadcasts in MessagesManager. 2021-12-03 12:28:33 +03:00