Commit Graph

582 Commits

Author SHA1 Message Date
levlam
de5379f00b Add more checks for close_status. 2022-10-13 14:51:00 +03:00
levlam
aa6ed42734 Add class CustomEmojiId. 2022-10-03 01:26:32 +03:00
levlam
39d2ac80b0 Remove unused ActorId methods. 2022-10-01 11:29:09 +03:00
levlam
d3a2df8858 Return stickers from getCustomEmojiReactionAnimations. 2022-09-30 15:55:46 +03:00
levlam
e39bd45086 Support search by keywords in getStickers. 2022-09-27 20:52:47 +03:00
levlam
4e78b4b65f Add helpers for sticker search. 2022-09-27 18:29:10 +03:00
levlam
ee04923ce1 Add lazy initialization for keyword_stickers_map_. 2022-09-27 16:16:36 +03:00
levlam
0c21d0d596 Save sticker keywords. 2022-09-27 00:20:13 +03:00
levlam
7ccaaf3b70 Update layer to 147. 2022-09-26 20:00:45 +03:00
levlam
a3bb5913a7 Improve clicked animated emoji zoom. 2022-09-26 16:13:57 +03:00
levlam
35058bb6a7 Add animatedEmoji.sticker_width/sticker_height. 2022-09-25 23:40:42 +03:00
levlam
12a8a5dbda Fix error handling in ReadFeaturedStickerSetsQuery. 2022-09-18 21:57:13 +03:00
levlam
30b961aebf Sort reactions returned in getMessageAvailableReactions. 2022-09-13 19:19:35 +03:00
levlam
38fbd00e99 Add and use get_reactions_hash. 2022-09-12 21:55:30 +03:00
levlam
8e5dccbdb5 Fix updating of active reactions in MessagesManager. 2022-09-12 21:39:23 +03:00
levlam
999326d56a Locally add reaction to recent. 2022-09-12 20:17:14 +03:00
levlam
f85b79d9bc Add td_api::clearRecentReactions. 2022-09-12 19:37:45 +03:00
levlam
ece581b797 Load recent reactions. 2022-09-12 19:14:02 +03:00
levlam
7b6d0ea6b4 Load top reactions from server. 2022-09-12 17:28:58 +03:00
levlam
de1ed3275f Add td_api::getCustomEmojiReactionAnimations. 2022-09-12 15:44:37 +03:00
levlam
a33eb5233c Add td_api::getEmojiReaction. 2022-09-12 15:03:35 +03:00
levlam
d29d3674ba Replace updateReactions with updateActiveEmojiReactions. 2022-09-12 01:35:47 +03:00
levlam
ce9175a00b Always use "must be non-empty". 2022-09-10 22:48:34 +03:00
levlam
c6d5bbb151 Remove class AvailableReaction. 2022-09-08 17:45:19 +03:00
levlam
14a9fda4ef Rename premiumStatus to emojiStatus. 2022-09-07 10:25:21 +03:00
levlam
51ea826b6c Synchronously load custom emoji from database if they are to be shown as an animated emoji. 2022-09-05 21:04:08 +03:00
levlam
8d6a83433f Use checks to catch wrong custom_emoji_to_sticker_id_ cache. 2022-09-05 20:26:10 +03:00
levlam
c5040d9fcd Locally move sticker set to top. 2022-09-04 21:35:11 +03:00
levlam
8e5f33e699 Process updateMoveStickerSetToTop update. 2022-09-02 18:35:57 +03:00
levlam
03af40bc08 Don't add themed premium statuses to recent. 2022-09-02 15:39:07 +03:00
levlam
2eba57276a Add td_api::getThemedPremiumStatuses. 2022-09-02 15:02:37 +03:00
levlam
899ceecab1 Support new special sticker set types. 2022-09-02 13:59:49 +03:00
levlam
4e6046b9ec Treat all emoji reactions as non-premium. 2022-08-24 23:31:15 +03:00
levlam
663389f19d Support improved updateStickerSets. 2022-08-23 18:24:21 +03:00
levlam
96fc91e239 Disable custom animated emoji for bots. 2022-08-22 09:20:37 +03:00
levlam
092499a7c6 Use WaitFreeHashSet where appropriate. 2022-08-21 00:20:57 +03:00
levlam
96cca84a60 Remove source from next_utf8_unsafe. 2022-08-19 16:37:44 +03:00
levlam
04b98aa385 Use OptionManager directly if possible. 2022-08-18 17:00:18 +03:00
levlam
0225f0cab7 Ensure that option values are fetched on launch. 2022-08-18 00:37:19 +03:00
levlam
9fddbf4ee8 Remove redundant parameters. 2022-08-17 21:40:03 +03:00
levlam
3318ffdb20 Proxy all option-related requests through G. 2022-08-17 16:11:13 +03:00
levlam
9a469eef31 Minor fixes. 2022-08-12 18:39:36 +03:00
levlam
4754f36808 Fix warning. 2022-08-10 18:38:30 +03:00
levlam
9f520f7db2 Asynchronously load reactions on start up. 2022-08-10 15:39:33 +03:00
levlam
f342b65500 Check for close status as early as possible. 2022-08-10 14:04:36 +03:00
levlam
12d852abc5 Check for close_flag as early as possible. 2022-08-10 13:57:41 +03:00
levlam
cee055350a Fix premium_sticker_positions_ initialization. 2022-08-08 21:13:22 +03:00
levlam
594aa2ff6d Use request promise in setStickerSetThumbnail. 2022-08-08 17:31:27 +03:00
levlam
69b1cc7967 Use request promise in createNewStickerSet. 2022-08-08 17:24:01 +03:00
levlam
57de8b5b09 Use request promise in addStickerToSet. 2022-08-08 17:01:04 +03:00
levlam
6871340548 Asynchronously update searchStickers cache. 2022-08-08 10:10:23 +03:00
levlam
05625491ba Cache found stickers in database. 2022-08-08 00:55:22 +03:00
levlam
2bf7b1e90a Optimize split_stickers_by_premium. 2022-08-07 21:10:15 +03:00
levlam
5304ac7ccf Optimize installed premium stickers traversal in getPremiumStickers. 2022-08-07 20:35:13 +03:00
levlam
36d7adef38 Unify field naming in private StickersManager classes. 2022-08-07 19:47:50 +03:00
levlam
e80e4304a4 Return stickers from installed sticker sets in getPremiumStickers. 2022-08-07 00:33:16 +03:00
levlam
1764cda9fa Automatically load installed sticker sets in StickersManager::get_stickers. 2022-08-06 23:39:54 +03:00
levlam
643cecbc16 Consider "disable_animated_emojis" option for custom emojis. 2022-08-05 21:56:05 +03:00
levlam
cb0daf0bef Resolve custom animated emoji stickers. 2022-08-05 20:49:24 +03:00
levlam
3c863517ba Return messageAnimatedEmoji for single custom emoji. 2022-08-05 17:58:16 +03:00
levlam
feafa4aacc Add chat_id to getStickers. 2022-08-05 14:06:06 +03:00
levlam
779090f4dd Add more WaitFree* classes usages. 2022-08-04 14:48:10 +03:00
levlam
bb5d8c0c8d Use WaitFreeHashMap in StickersManager. 2022-08-03 22:42:52 +03:00
levlam
ad72974e70 Simplify implementation of merge_* for documents. 2022-08-03 21:58:07 +03:00
levlam
33623f9818 Remove unused can_delete_old parameter. 2022-08-03 21:38:03 +03:00
levlam
0f77d5c871 Use request promise in td_api::searchStickers. 2022-08-01 18:50:08 +03:00
levlam
d4135d59f6 Return trending custom emoji in getStickers. 2022-08-01 16:56:21 +03:00
levlam
044aabf329 Fix short_name_to_sticker_set_id_ usages. 2022-07-31 03:17:43 +03:00
levlam
e8b2971a42 Add more checks for HashTable keys. 2022-07-31 01:15:23 +03:00
levlam
c55baf4c61 Ignore empty custom emoji documents. 2022-07-28 12:56:53 +03:00
levlam
36c6b84ec8 Add remove_premium_custom_emoji_entities. 2022-07-27 23:36:44 +03:00
levlam
99b39069a4 Document limit on the number of identifiers allowed in getCustomEmojiStickers. 2022-07-26 20:05:48 +03:00
levlam
7cdf1a05bb Update custom emoji once a day. 2022-07-26 19:29:37 +03:00
levlam
59a27e3b15 Get from the server only unknown custom emoji. 2022-07-26 18:48:18 +03:00
levlam
e96a1995a2 Load custom emoji from database, 2022-07-25 23:04:53 +03:00
levlam
f20f015caa Save custom emoji to database. 2022-07-25 21:18:43 +03:00
levlam
4e9c7ffbf2 Return custom emoji from in-memory cache if possible. 2022-07-24 19:54:15 +03:00
levlam
8183e062ab Handle installed sticker sets of incorrect type in the database. 2022-07-24 15:03:54 +03:00
levlam
40b5b586e6 Add sticker_type to getStickers. 2022-07-24 14:53:48 +03:00
levlam
99ae4ada88 Access arrays with pre-casted sticker type. 2022-07-24 14:01:58 +03:00
levlam
f26a33b3d3 Implement StickersManager::is_premium_custom_emoji. 2022-07-22 19:06:39 +03:00
levlam
d361d6e8a1 Add StickersManager::get_custom_emoji_id. 2022-07-22 18:27:12 +03:00
levlam
97ab564e07 Prepare for removing premium custom emoji if have no premium. 2022-07-22 18:11:55 +03:00
levlam
813867eb66 Improve special sticker set loading. 2022-07-22 15:40:24 +03:00
levlam
a81740892d Add messageGiftedPremium.sticker. 2022-07-22 15:01:44 +03:00
levlam
61fe5d0df5 Register GiftPremium messages. 2022-07-22 13:30:24 +03:00
levlam
b5468e4cac Move out StickerType from inputSticker. 2022-07-21 17:31:27 +03:00
levlam
342bf8c41f Preload sticker set before adding a sticker to it. 2022-07-21 16:06:58 +03:00
levlam
310c4d1b6a Always try to fetch mask_position. 2022-07-21 15:54:43 +03:00
levlam
7d94cc9aa8 Remove some unneeded logging. 2022-07-20 18:01:26 +03:00
levlam
771b6d3991 Add td_api::getCustomEmojiStickers. 2022-07-19 16:00:04 +03:00
levlam
ba3f24ed8d Rename stickerTypeEmoji to stickerTypeCustomEmoji. 2022-07-19 14:51:29 +03:00
levlam
219d5ecf87 Add sticker.custom_emoji_id. 2022-07-19 14:45:37 +03:00
levlam
585191bb6f Process stickerSetFullCovered. 2022-07-18 21:44:44 +03:00
levlam
fd6684ab9d Disallow sending, adding to favorite and recent for emoji stickers. 2022-07-18 14:51:37 +03:00
levlam
7cd65d06a1 Support emoji stickers in get_max_sticker_file_size. 2022-07-17 23:49:46 +03:00
levlam
4442293acf Support trending emoji sticker sets. 2022-07-17 22:39:22 +03:00
levlam
32c7bd8bcd Support thumbnail_document_id. 2022-07-16 17:22:30 +03:00
levlam
d506c4732a Add getPremiumGiftOptionSticker. 2022-07-15 16:15:59 +03:00
levlam
d3b9b3b7c4 Support premium gifts special sticker set. 2022-07-15 15:24:08 +03:00
levlam
3bfb3cdbb1 Add explicit flag sticker.is_premium. 2022-07-15 13:37:46 +03:00
levlam
ea8f81187e Support documentAttributeCustomEmoji. 2022-07-14 17:11:36 +03:00
levlam
5bdc4e207b Add stickerTypeEmoji. 2022-07-14 16:42:27 +03:00
levlam
c34f5d063b Use StickerType instead of is_masks everywhere. 2022-07-14 16:17:19 +03:00
levlam
b447c32fe9 Add class StickerType. 2022-07-14 15:02:55 +03:00
levlam
a896edcd14 Move mask_position out of stickerTypeMask. 2022-07-14 14:38:25 +03:00
levlam
7d5dc9fd16 Split sticker format and sticker type in API. 2022-07-14 13:58:33 +03:00
levlam
e38615b71e Update layer to 144. 2022-07-01 14:33:59 +03:00
levlam
4cf1e02479 Add multiarg version of Scheduler::destroy_on_scheduler. 2022-07-22 21:21:30 +03:00
levlam
0f87447ffc Asynchronously destroy some big data storages. 2022-07-20 13:40:14 +03:00
levlam
bedec2c9ba Add StickersManager::get_sticker_set_thumbnail_object. 2022-07-16 15:45:30 +03:00
levlam
7618c9aa64 Add get_sticker_type function. 2022-07-13 23:02:46 +03:00
levlam
d489014350 Compare stickers and animation by their remote ID when remove them from recent/saved. 2022-07-03 12:17:04 +03:00
levlam
2f17f55305 Don't dup stickers in a set. 2022-07-03 11:53:01 +03:00
levlam
32bac7bd24 Move Promise to tdutils. 2022-06-27 13:30:18 +03:00
levlam
375d3d23fb Fix handling of stickerSetNotModified. 2022-06-21 17:34:24 +03:00
levlam
86c130a462 Minor fixes. 2022-06-21 02:55:53 +03:00
levlam
b6019f25e4 Improve sticker order for trending sticker sets. 2022-06-18 11:16:32 +03:00
levlam
f1247493c5 Add class trendingStickerSets. 2022-06-17 19:16:17 +03:00
levlam
dc8903fc71 Allow to get stcikerSetInfo with preferred premium stickers. 2022-06-17 08:59:54 +03:00
levlam
762b1577e9 Add StickersManager::split_stickers_by_premium. 2022-06-16 21:12:20 +03:00
levlam
63e55553f5 Improve stickers order in getStickers. 2022-06-10 14:31:28 +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
8fae960e43 Support premium stickers in secret chats. 2022-06-03 17:31:48 +03:00
levlam
e9a8d43a0a Add td_api::getAllAnimatedEmojis. 2022-05-23 14:05:35 +03:00
levlam
0909f88bc3 Use int53 for file size in TDLib API. 2022-05-11 17:17:20 +03:00
levlam
880a582959 Add layer 143 to secret chats. 2022-05-11 07:46:06 +03:00
levlam
447cfbfb1d Support premium stickers. 2022-04-26 16:01:29 +03:00
levlam
f8077965ad Support premium reactions. 2022-04-26 14:40:06 +03:00
levlam
a90dd653af Avoid logging to error if invalid dimensions were provided by app. 2022-05-26 17:13:31 +03:00
levlam
de5f047dba Remove all emoji modifiers, including modifiers in the middle. 2022-05-12 18:02:27 +03:00
levlam
6790c309ac Move data reloading to UpdatesManager. 2022-05-12 16:34:13 +03:00
levlam
f9f309d334 Simplify SecretInputMedia creation. 2022-05-11 01:53:18 +03:00
levlam
4652292037 Use count instead of find if appropriate. 2022-05-01 23:03:06 +03:00
levlam
dc79b35570 Check for duplicate calls to init(). 2022-04-26 02:06:35 +03:00
levlam
402f75153b Improve get_sticker_set_short_name usages. 2022-04-17 23:07:00 +03:00
levlam
163e739302 Add set_promises/fail_promises helper functions. 2022-04-13 17:40:12 +03:00
levlam
37123a50ff Don't create vectors using set iterators. 2022-03-12 13:22:07 +03:00
levlam
1f38124861 Use FlatHashSet. 2022-03-11 21:38:48 +03:00
levlam
deafeee33b Guess format of sent stickers by file extension. 2022-02-17 20:45:58 +03:00
levlam
a5ed61393c Improve logging. 2022-02-17 18:42:50 +03:00
levlam
15f27455c5 Move other big classes inside FlatHashMap to unique_ptr. 2022-02-11 19:27:32 +03:00
levlam
fc73b94a59 Fix outline of animated sticker sets. 2022-02-11 18:07:56 +03:00
levlam
dc198f537c Ignore stickerPack with an empty emoticon. 2022-02-11 17:46:57 +03:00
levlam
d5d4f4acf7 Fix remaining FlatHashMap usages. 2022-02-10 18:03:03 +03:00
levlam
2b1314295d Check and fix half of FlatHashMap usages. 2022-02-10 00:59:52 +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
f3bb075f62 Use InvokeAfter for all queries changing sticker sets. 2022-02-06 00:16:16 +03:00