Commit Graph

6204 Commits

Author SHA1 Message Date
levlam
9c9a74c52d Workaround GCC 7.4.0 false warning. 2022-05-19 19:50:02 +03:00
levlam
16959e33e4 Use WaitFreeHashMap for message_id_to_dialog_id_. 2022-05-19 19:34:48 +03:00
levlam
18cd0dd95e Workaround GCC 12 false positive warnings. 2022-05-18 16:59:15 +03:00
levlam
1616513c4c Add and use MessagesManager::is_deleted_message. 2022-05-18 12:16:32 +03:00
levlam
e65c0827a4 Drop dangling replies to yet unsent messages. 2022-05-17 16:27:46 +03:00
levlam
0bf2aaf4f2 Resolve identifiers of being added secret messages by their random_id. 2022-05-17 16:19:39 +03:00
levlam
19407656b5 Add more logging and don't set unused message flags. 2022-05-17 15:30:58 +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
8f42c97252 Fix CHECK. 2022-05-16 20:00:59 +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
b6c7da172c Log received messages. 2022-05-15 18:37:55 +03:00
levlam
883f6d2286 Copy can_be_deleted flag to Channel to avoid ChannelFull loading. 2022-05-15 12:48:22 +03:00
levlam
5a1a64764b Add check that there are no two new chats added simultaneously. 2022-05-15 10:53:06 +03:00
levlam
70050704d2 Remove unimplemented UploadCallback::on_progress. 2022-05-15 01:13:07 +03:00
levlam
b42c74f561 Minor OptionManager::set_option improvements. 2022-05-14 20:09:08 +03:00
levlam
514ffd7e77 Minor ConfigShared improvements. 2022-05-14 19:59:11 +03:00
levlam
c17520fdbc Implement getSupportUser with request promise instead of RequestActor. 2022-05-14 18:54:21 +03:00
levlam
1995cbe6bc Simplify getSupportUser implementation. 2022-05-14 18:29:34 +03:00
levlam
941206495a Reload data once an hour. 2022-05-13 13:56:18 +03:00
levlam
de5f047dba Remove all emoji modifiers, including modifiers in the middle. 2022-05-12 18:02:27 +03:00
levlam
f1f6e61cd1 Reload all data when going online. 2022-05-12 16:40:53 +03:00
levlam
6790c309ac Move data reloading to UpdatesManager. 2022-05-12 16:34:13 +03:00
levlam
6f8b513597 Improve log message. 2022-05-12 15:18:07 +03:00
levlam
c0eb211476 Locally fix until_date before sending it to the server. 2022-05-12 14:38:45 +03:00
levlam
f9f309d334 Simplify SecretInputMedia creation. 2022-05-11 01:53:18 +03:00
levlam
35a0a7c383 Ignore empty next_offset in group calls with new participants added to the end of the list. 2022-05-10 21:48:06 +03:00
levlam
f972b3ad56 Add separate function for server group call participant order calculation. 2022-05-10 21:37:10 +03:00
levlam
c44c0f3fd3 Show unmuted group call participants first. 2022-05-10 21:26:58 +03:00
levlam
661c75fa42 Log number of group call updates to be processed. 2022-05-10 21:02:03 +03:00
levlam
71d5dd526e Separately register scheduled and local polls. 2022-05-09 01:58:17 +03:00
levlam
77019caf61 Unload unused for some time polls. 2022-05-09 01:46:46 +03:00
levlam
3d796860d2 Use server-side forward as copy. 2022-05-08 23:54:04 +03:00
levlam
995b06b317 Drop ChatFull/ChannelFull photo after updating chat/channel photo. 2022-05-06 12:41:55 +03:00
levlam
0a91c2b097 Remove unused argument. 2022-05-05 23:07:42 +03:00
levlam
ab3a8282d4 Add warning when receive inconsistent photos in chatPhoto and chatPhotoInfo. 2022-05-04 20:08:32 +03:00
levlam
bf05cf1680 Update user photo from user full photo. 2022-05-04 20:02:35 +03:00
levlam
1191f13f91 Fix compilation error. 2022-05-04 17:17:40 +03:00
levlam
fc6b1c0ea8 Enable back log out. 2022-05-03 16:31:58 +03:00
Arseny Smirnov
852fe4f24b Session: force ack when we received unknown answer 2022-05-03 17:17:36 +04:00
levlam
fb1efdbba8 Return back notification.is_silent. 2022-05-03 16:09:40 +03:00
levlam
4b7dab920e Don't update last_success_timestamp_ in Session::on_update with PFS. 2022-05-03 16:06:14 +03:00
Arseny Smirnov
0450b05757 Session: improve key immunity condition 2022-05-03 16:33:09 +04:00
levlam
0d0b641ac6 Log out only if there is main auth key, but it isn't logged in. 2022-05-02 21:41:04 +03:00
levlam
d95b20b631 Try not to override "auth" option. 2022-05-02 21:20:39 +03:00
levlam
de15cdb1f0 Log out if key check has failed. 2022-05-02 21:17:06 +03:00
levlam
746816e7d7 Add Global::log_out helper. 2022-05-02 20:59:07 +03:00
levlam
d6569d43fd Fix DcAuthManager::check_authorization_is_ok. 2022-05-02 20:44:37 +03:00
levlam
134b7e7d01 Remove unused function. 2022-05-02 20:35:37 +03:00
Arseny Smirnov
449974d425 Double check authorization during start up 2022-05-02 19:34:01 +04:00
levlam
3886cc9c13 Minor SessionType improvements. 2022-05-02 13:54:22 +03:00
alyral
76d687e62d
Add session type field (#1950) 2022-05-02 13:46:16 +03:00
levlam
4652292037 Use count instead of find if appropriate. 2022-05-01 23:03:06 +03:00
levlam
00aa9f54bd Use ContactsManager::get_dialog_id in on_get_common_dialogs. 2022-04-30 21:22:27 +03:00
levlam
68ad0b4317 Add ContactsManager::get_dialog_id. 2022-04-30 21:13:01 +03:00
levlam
f2dead72ca Use can_delete_dialog in delete_dialog_history. 2022-04-29 14:50:54 +03:00
levlam
ddbfc45925 Add MessagesManager::can_delete_dialog. 2022-04-29 14:33:35 +03:00
levlam
834a541bc3 Add apply_pending_user_photo and use it in on_get_user_full. 2022-04-29 11:23:27 +03:00
levlam
3cdd08feef Add missing flag assignment. 2022-04-29 11:02:53 +03:00
levlam
6a87f0c6ef Avoid updating chat photo minithumbnail to 40x40 full minithumbnail. 2022-04-29 10:50:10 +03:00
levlam
58ff3d5e5d Ignore photo size for fake dialog photo. 2022-04-28 22:29:10 +03:00
levlam
840cedf49c Drop ChatFull/ChannelFull photos if chat/channel photo is different. 2022-04-28 21:18:57 +03:00
levlam
f421cff7f3 Add and use is_same_dialog_photo. 2022-04-28 21:02:44 +03:00
levlam
d106148618 Update chat/channel photo whenever receive new full chat/channel photo. 2022-04-28 20:35:44 +03:00
levlam
b6f711044f Add as_dialog_photo. 2022-04-28 20:33:24 +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
36c2ef9e62 Ensure that the current user is among recent choosers of the chosen reaction. 2022-04-27 22:13:05 +03:00
levlam
ee157920e9 Expect that it is not possible to see added reactions under discussion messages. 2022-04-27 21:47:50 +03:00
levlam
7cabdbc74f Improve flags initialization in do_forward_messages. 2022-04-27 10:02:35 +03:00
levlam
ea66c0984f Return encrypted secure file if can't decrypt it. 2022-04-27 02:39:00 +03:00
levlam
5cb83bd340 Suppress expected error logging. 2022-04-27 02:14:44 +03:00
levlam
11fa9dbb34 Remove unused function. 2022-04-26 16:19:37 +03:00
levlam
dc79b35570 Check for duplicate calls to init(). 2022-04-26 02:06:35 +03:00
levlam
17275fe422 Output the number of objects to be freed on closing. 2022-04-25 20:52:44 +03:00
levlam
641ee080c1 Improve names of FileType::Secure. 2022-04-25 19:00:40 +03:00
levlam
69eb286067 Avoid expected logging. 2022-04-25 17:59:42 +03:00
levlam
a7bd57a793 Add checks for file_id/file_node_id overflow. 2022-04-25 17:33:31 +03:00
levlam
61942cf3ea Remove unneeded bool initializations in parsers. 2022-04-24 22:43:43 +03:00
levlam
3bd99f98b8 Add limit on text length in parseTextEntities. 2022-04-23 01:36:44 +03:00
levlam
13bd8044cf Add source to send_update_chat_unread_reaction_count. 2022-04-23 01:14:51 +03:00
levlam
0511b962b9 Actually upload file in sendCallLog. 2022-04-22 18:17:36 +03:00
levlam
af97e963a9 Add td_api::sendCallLog. 2022-04-22 15:16:09 +03:00
levlam
1f4890c906 tg_cli: add class GroupCallId. 2022-04-22 14:50:52 +03:00
levlam
849125265c tg_cli: add CallId class. 2022-04-22 14:44:53 +03:00
levlam
f76a9660ed Add can_reuse_remote_file to FileType.cpp. 2022-04-22 14:28:51 +03:00
levlam
f396cadc1a Add FileType::CallLog. 2022-04-21 22:34:26 +03:00
levlam
f6fd1f55cb Add and use get_file_type_class. 2022-04-21 22:14:12 +03:00
levlam
7fcd92a622 Move is_document_file_type to FileType.cpp. 2022-04-21 21:54:33 +03:00
levlam
a91bed2996 Add notification sound size and duration checks. 2022-04-18 19:08:32 +03:00
levlam
a506382e4b Use '= {}' instead of '= Auto()'. 2022-04-18 18:21:41 +03:00
levlam
782670c7db Fix anonymous administrator right. 2022-04-17 23:36:37 +03:00
levlam
1a2efed26d Remove NetQuery::set_chain_ids. 2022-04-17 23:21:56 +03:00
levlam
402f75153b Improve get_sticker_set_short_name usages. 2022-04-17 23:07:00 +03:00
levlam
9b19e88c2a Use file name instead of notification sound title if there is none. 2022-04-17 19:01:01 +03:00
levlam
b9036dda3e Don't call get_history_from_the_end for bots. 2022-04-17 14:33:34 +03:00
levlam
054a823c1a Update version to 1.8.3. 2022-04-16 06:02:10 +03:00
levlam
9c3675d61b Minor fixes. 2022-04-16 06:01:05 +03:00
levlam
da4282a6d9 Add optional administrator_rights to internalLinkTypeBotStartInGroup. 2022-04-16 05:30:23 +03:00
levlam
eef401cea0 Save and load saved notification sounds. 2022-04-16 04:20:36 +03:00
levlam
6b23333ff4 Fix removal of saved ringtone. 2022-04-15 22:08:57 +03:00
levlam
147697fdf5 Add updateSavedNotificationSounds. 2022-04-15 21:54:47 +03:00
levlam
a59201f913 Reload all notification sounds if list is changed unpredictably. 2022-04-15 21:19:15 +03:00
levlam
1c266d65b1 Update notification sound option names. 2022-04-15 21:03:13 +03:00
levlam
104ebaaacb Support sound_id in push notifications. 2022-04-15 18:49:21 +03:00
levlam
3215bb0242 Replace is_silent with sound_id in notifications. 2022-04-15 18:36:24 +03:00
levlam
b17a05f3fc Increase MessageUnsupported version to reload web_app buttons. 2022-04-15 16:32:12 +03:00
levlam
77532d67f8 Support file reference repair for notification sounds. 2022-04-15 16:27:30 +03:00
levlam
ff50eec3ee Add notificationSound.date. 2022-04-15 15:30:51 +03:00
levlam
497bc9006a Support setting files from secret chats as ringtones. 2022-04-15 14:37:01 +03:00
levlam
a16a5ec5e3 Support ringtone uploading. 2022-04-15 14:07:54 +03:00
levlam
ff6f165551 Fix "attachment menu" spelling. 2022-04-14 22:56:27 +03:00
levlam
42c6280321 Add addSavedNotificationSound. 2022-04-14 22:39:25 +03:00
levlam
178d6414dd Add td_api::removeSavedNotificationSound. 2022-04-14 14:31:18 +03:00
levlam
f849131873 Add getSavedNotificationSound. 2022-04-14 13:23:43 +03:00
levlam
dfa38e059d Improve NetQuery debug. 2022-04-14 12:53:16 +03:00
levlam
c72ad76b31 Clear used promise just in case. 2022-04-14 10:55:22 +03:00
levlam
1f18008cc6 Add td_api::getSavedNotificationSounds. 2022-04-13 22:14:40 +03:00
levlam
7fff2d2e40 Reload ringtones after receiving updateSavedRingtones. 2022-04-13 20:36:57 +03:00
levlam
163e739302 Add set_promises/fail_promises helper functions. 2022-04-13 17:40:12 +03:00
levlam
4612910a14 Rename notification tones to notification sounds in API, 2022-04-12 23:27:20 +03:00
levlam
3378131467 Add fileTypeNotificationSound. 2022-04-12 22:50:20 +03:00
levlam
c359710cf6 Move default options initialization to OptionManager. 2022-04-12 18:33:46 +03:00
levlam
7aa5a0e348 Add notification tone options. 2022-04-12 18:15:45 +03:00
levlam
7dc3966f18 Avoid key name duplication in get_json_value_* calls. 2022-04-12 18:01:18 +03:00
levlam
1db6fb389c Rename ringtones to notification tones in API, 2022-04-12 17:48:24 +03:00
levlam
2696a4abbb Restore failed to delete messages. 2022-04-12 17:34:08 +03:00
levlam
295412ed5e Avoid some getChannelFull requests. 2022-04-12 16:59:54 +03:00
levlam
879f8da67a Respect flood waits in reregister_device. 2022-04-12 16:21:42 +03:00
levlam
877452f6ce Add Global::get_retry_after. 2022-04-12 16:12:22 +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
32ed470417 Fix attach menu icons initialization. 2022-04-11 12:55:43 +03:00
levlam
9fd72e86d0 Move scope notification settings tp NotificationSettingsManager. 2022-04-11 12:45:52 +03:00
levlam
61014ce5b0 Minor fixes. 2022-04-10 22:10:41 +03:00
levlam
88b9f35b91 Add PhotoSize.h. 2022-04-10 01:15:49 +03:00
levlam
05c0833525 Add PhotoFormat.h. 2022-04-09 23:21:07 +03:00
levlam
b3a0c1dcda Fix notifications settings of newly created chats. 2022-04-08 18:08:06 +03:00
levlam
cb5fe8c7cd Move some related to notification settings methods to NotificationSettingsManager. 2022-04-08 17:17:56 +03:00
levlam
161d34fc15 Keep in chat list empty joined basic groups. 2022-04-08 15:35:21 +03:00
levlam
1302aa2520 Fix opening bot from bot menu. 2022-04-08 04:09:07 +03:00
levlam
2b3d3c5efd Apply bot menu button update to non-loaded users. 2022-04-08 04:02:25 +03:00
levlam
0c9e72a00a Fix error message. 2022-04-08 03:48:38 +03:00
levlam
6c0438fc69 Minor fixes. 2022-04-07 20:38:22 +03:00
levlam
00c64aba6e Remove openWebApp.from_bot_menu flag. 2022-04-07 18:29:59 +03:00
levlam
e25ca7ef33 Add td_api::setMenuButton. 2022-04-07 18:15:58 +03:00
levlam
4155752cdf Add td_api::getMenuButton. 2022-04-07 17:20:26 +03:00
levlam
62612b9668 Add BotMenuButton. 2022-04-06 20:24:54 +03:00
levlam
2a0ff37f76 Improve error messages. 2022-04-05 19:07:12 +03:00
levlam
317d267241 Allow HTTP web app links in test DC. 2022-04-05 18:52:22 +03:00
levlam
7e69ef731d Add empty NotificationSettingsManager. 2022-04-05 00:40:22 +03:00
levlam
a1125be8eb Keep promise non-emptiness in call to send_get_channel_full_query. 2022-04-04 20:20:29 +03:00
levlam
7c4f3c79ef Suppress expected error. 2022-04-04 20:05:34 +03:00
levlam
1f11239255 Use InvokeAfter for some chat-related requests. 2022-04-04 20:01:56 +03:00
levlam
c5d58a8158 Add source to MessagesManager::repair_server_unread_count. 2022-04-04 19:29:03 +03:00
levlam
da3baf09e9 Improve logging. 2022-04-04 19:08:47 +03:00
levlam
713debab58 Update participant cache after changing their rights. 2022-04-04 17:16:31 +03:00
levlam
7d3f0cb37f Use get_channel_participant in set_channel_participant_status to honor chat member cache. 2022-04-04 16:44:48 +03:00
levlam
e2f9cc399f Pass correct ChannelType to DialogParticipant constructor. 2022-04-04 16:29:46 +03:00
levlam
c3996b4726 Always adjust administrator rights for supergroups and channels. 2022-04-04 16:19:41 +03:00
levlam
99b79911e0 Remove verbose DialogParticipantStatus::Administrator. 2022-04-04 15:59:30 +03:00
levlam
1d6488ab09 Add ContactsManager::is_broadcast_channel/is_megagroup_channel helpers. 2022-04-04 15:48:33 +03:00
levlam
a8a343704a Add ChannelType.h. 2022-04-04 15:35:09 +03:00
levlam
7f587c24d9 Replace get_restricted_rights with RestrictedRights constructors. 2022-04-04 14:13:51 +03:00
levlam
4a50db52d8 Replace get_administrator_rights with AdministratorRights constructor. 2022-04-04 13:58:14 +03:00
levlam
665c1adc75 Ignore RIGHTS_NOT_MODIFIED error. 2022-04-03 23:33:33 +03:00
levlam
ca1f844f44 Remove unneeded commas. 2022-04-03 22:59:28 +03:00
levlam
a73ccbd19d Invalidate UserFullInfo after changing default administrator rights. 2022-04-03 10:41:14 +03:00
levlam
dd6a741f8a Add setDefaultGroupAdministratorRights/setDefaultChannelAdministratorRights. 2022-04-02 15:32:04 +03:00
levlam
fd00755bec Add internalLinkTypeBotAddToChannel. 2022-04-02 14:51:20 +03:00
levlam
7364334ebe Add internalLinkTypeAttachMenuBot. 2022-04-01 14:00:34 +03:00
levlam
2992d1e5e4 Prolong opened web view every minute. 2022-04-01 00:00:50 +03:00
levlam
07424ae14e Add updateWebAppMessageSent. 2022-03-31 22:02:19 +03:00
levlam
c1aa1defbb Add td_api::closeWebApp. 2022-03-31 21:45:35 +03:00
levlam
e54fac174a Rename web view to web app. 2022-03-31 16:42:59 +03:00
levlam
68db9a03cc Fix copy-paste bug. 2022-03-31 15:33:55 +03:00
levlam
df24a2ec90 Add td_api::openWebView. 2022-03-31 15:05:08 +03:00
levlam
ad7e0e2118 Improve method names and documentation. 2022-03-31 12:25:46 +03:00
levlam
b01bc42470 Reload attach menu bots if failed to toggle one. 2022-03-31 12:10:50 +03:00
levlam
e541e140bb Support colors for attach menu bots. 2022-03-31 12:07:19 +03:00
levlam
29ab44b5d2 Add getSimpleWebViewUrl. 2022-03-30 16:27:01 +03:00
levlam
1780780caf Reload attach menu bots after language code changed. 2022-03-30 14:48:23 +03:00
levlam
3b78712b71 Disable reaction count reloading right after it was set. 2022-03-30 11:36:52 +03:00
levlam
c088dd9366 Add synchronous method td_api::getThemeParametersJsonString. 2022-03-29 20:22:38 +03:00
levlam
0b8b413206 Rename class td_api::paymentFormTheme to td_api::themeParameters. 2022-03-29 16:34:51 +03:00
levlam
8d35ac0b72 Avoid duplicate source in on_get_users/chats. 2022-03-29 15:54:36 +03:00
levlam
13975f4e54 Reload attach menu bots after adding or removing a bot. 2022-03-29 15:48:21 +03:00
levlam
5b81010f0b Add promise to reload_attach_menu_bots. 2022-03-29 15:42:57 +03:00
levlam
2ff0b74af6 Add td_api::getAttachMenuBot. 2022-03-29 15:00:00 +03:00
levlam
a906c16cd4 Add get_attach_menu_bot_object. 2022-03-29 14:03:06 +03:00
levlam
8736193034 Add AttachMenuManager::get_attach_menu_bot function. 2022-03-29 13:47:24 +03:00
levlam
ccbedd39bf Check inactive flag of attachMenuBot. 2022-03-29 12:35:41 +03:00
levlam
759d02770d Allow to use deleteChatHistory to revoke messages for all members in some channels. 2022-03-29 12:14:21 +03:00
levlam
977ebca580 Allow owner to clear basic group history for everyone. 2022-03-28 21:23:12 +03:00
levlam
0375704460 Use get_input_user instead of have_input_user. 2022-03-28 20:26:28 +03:00
levlam
ac8e856269 Allow only HTTPS links for web view. 2022-03-28 16:24:56 +03:00
levlam
0bd4c1a778 Check link in td_api::keyboardButtonTypeWebView. 2022-03-28 15:54:23 +03:00