Commit Graph

794 Commits

Author SHA1 Message Date
John Preston
0ed434cfaf Show all stickers as emoji after default categories. 2022-07-26 20:12:09 +03:00
John Preston
c01d9747e7 Fix inline via @bot click in additional windows
Fixes #24717.
2022-07-26 20:12:09 +03:00
John Preston
2fc43a44a4 Don't paste custom emoji for non-premium users. 2022-07-26 20:12:08 +03:00
John Preston
ee8d8171f7 Support custom emoji in custom notification replies. 2022-07-26 20:12:08 +03:00
John Preston
7a10d3d82c Support animated emoji in share box comment. 2022-07-26 20:12:08 +03:00
John Preston
806c5ddf29 Support animated emoji in caption edit fields. 2022-07-26 20:12:08 +03:00
John Preston
2499955496 Support custom emoji in the message input field. 2022-07-26 20:12:08 +03:00
John Preston
6db3a0ec98 Support optimized lottie emoji. 2022-07-26 20:12:08 +03:00
John Preston
21aa1323ec Provide custom emoji factory through MarkedTextContext. 2022-07-26 20:12:08 +03:00
John Preston
5fe1988d0a Suggest bot commands only in the start of the field. 2022-06-18 00:01:47 +04:00
23rd
13146e9c06 Replaced use of raw MTP* bot commands with new transitional classes. 2022-06-14 18:51:18 +04:00
23rd
5f8608ed90 Moved out BotCommand struct to separated file. 2022-06-14 18:45:12 +04:00
John Preston
5f9eeb7cbe Show premium star while preview video loads. 2022-06-13 23:10:32 +04:00
John Preston
50926acab9 Toggle premium stickers previews. 2022-06-13 23:10:32 +04:00
23rd
acf7a82507 Added preview box for premium doubled limits. 2022-06-13 14:27:26 +03:00
23rd
1d475ee727 Slightly optimized includes in application.h. 2022-06-12 16:07:41 +03:00
John Preston
f78b9324dc Show videos in premium preview boxes. 2022-06-10 12:05:16 +04:00
23rd
43c0197445 Removed Ui::hideLayer from places that can be in non-primary windows. 2022-06-09 07:06:01 +03:00
John Preston
b750908dff Refresh stickers when premium becomes possible. 2022-06-08 19:29:16 +04:00
John Preston
86889cf1ef Don't show premium stickers if premium blocked. 2022-06-08 10:28:45 +04:00
John Preston
a780fbd09b Add "ctrl-click-chat-new-window" option. 2022-06-07 22:05:37 +04:00
John Preston
719190d570 Improve locked premium stickers design. 2022-06-06 16:08:11 +04:00
John Preston
569cea98b4 Redesign premium reactions preview box. 2022-06-01 11:59:14 +04:00
John Preston
d2abcdacee Show information about disabled reactions. 2022-05-27 23:57:40 +04:00
John Preston
2362d6c6fb Introduce premium reactions preview box. 2022-05-27 19:42:05 +04:00
John Preston
853cafe195 Show premium stickers lock icon. 2022-05-20 18:57:01 +04:00
John Preston
ad3c6ebb1e Use / cache the same sticker / effect size in preview. 2022-05-19 19:05:07 +04:00
John Preston
b02a965778 Add premium sticker packs icon. 2022-05-19 17:30:02 +04:00
John Preston
ca731968ca Improve premium sticker sync / preview. 2022-05-19 17:27:03 +04:00
John Preston
6dedf7c63e Update API scheme to layer 143. 2022-05-19 17:27:02 +04:00
John Preston
dd05fb4d14 Show limit toasts and boxes. 2022-05-19 17:27:02 +04:00
John Preston
af9a252b64 Show premium stickers fake-set in the panel. 2022-05-19 17:27:02 +04:00
John Preston
2ece565aac Mirror premium sticker thumbnail / path. 2022-05-19 17:27:01 +04:00
John Preston
ea30918d35 Fix build with GCC. 2022-04-07 18:28:58 +04:00
John Preston
f6559c01e4 Fix sticker image caching in case cell size changes. 2022-03-31 15:24:58 +04:00
23rd
2846aa2f77 Moved SendMenu to separated folder. 2022-03-27 17:59:30 +03:00
23rd
0b336a2954 Fixed sending animation from inline bots with unexpected result type. 2022-03-15 18:02:30 +03:00
John Preston
32d09f189b Use rpl::empty instead of rpl::empty_value(). 2022-03-11 09:56:29 +04:00
John Preston
173fdf8056 Send GIFs search results without "via @bot". 2022-03-07 11:09:14 +04:00
23rd
309d4ea702 Added ability to provide field style to EditLinkBox. 2022-03-06 18:11:47 +03:00
23rd
cf55f1a7cd Added ability to use EditLinkBox without SessionController. 2022-03-06 18:11:47 +03:00
23rd
87bdfaf731 Added ability to skip dictionaries manager in context menu. 2022-03-06 18:11:47 +03:00
23rd
b5aafa521a Replaced EditLinkBox with generic box. 2022-03-04 11:25:10 +03:00
23rd
5e13949eda Added ability to initialize spellchecker without SessionController. 2022-03-04 11:25:10 +03:00
23rd
b900ac2b1d Removed Window::SessionController from ManageDictionariesBox. 2022-03-04 11:25:10 +03:00
Klemens Nanni
6decece009 Remove unused variables 2022-02-28 23:11:07 +03:00
23rd
5718789d53 Replaced Ui::InformBox and Ui::ConfirmBox with GenericBox. 2022-02-28 09:08:01 +03:00
John Preston
1710863231 Update some icons. 2022-02-27 20:26:52 +03:00
23rd
2e40798e8e Added simple animation of GIFs sending. 2022-02-25 19:41:16 +03:00
23rd
a0a857a6db Added simple animation of stickers sending from autocomplete field. 2022-02-25 19:41:16 +03:00
23rd
d633860e1d Added simple animation of static stickers sending. 2022-02-25 19:41:15 +03:00
John Preston
c39f15bd71 Fix build with VS 2022 17.1. 2022-02-25 14:14:43 +03:00
Ilya Fedin
9309f98094 Fix Hunspell spellchecking with Qt 6 2022-02-19 16:00:24 +03:00
John Preston
f6bfe2c9a8 Mark all reactions as read context menu. 2022-01-28 19:10:07 +03:00
John Preston
e9c79886d2 Track unread mentions and unread reactions the same way. 2022-01-28 19:10:07 +03:00
John Preston
2a99f1a1ef Add tabbed-panel-show-on-click option. 2022-01-28 19:10:07 +03:00
John Preston
b4eb25de58 Support webm stickers in StickerSetBox. 2022-01-28 19:10:07 +03:00
John Preston
d96a8d028a Support webm stickers in field autocomplete. 2022-01-28 19:10:07 +03:00
John Preston
c359646702 Animate webm pack icon in the panel. 2022-01-28 19:10:07 +03:00
John Preston
51fef843f0 Optimize sets stickers / gifs panel repainting. 2022-01-28 19:10:07 +03:00
John Preston
f1d9cca119 Fix crash and pause in stickers panel with webm. 2022-01-28 19:10:07 +03:00
John Preston
8e749173de Render webm stickers in StickersListWidget. 2022-01-28 19:10:07 +03:00
John Preston
20dbf18106 Init webm player for sticker set thumbnails. 2022-01-28 19:10:07 +03:00
John Preston
8b7d2c880e Support rendering Webm videos with alpha. 2022-01-28 19:10:07 +03:00
23rd
8bea6776f5 Replaced checking global key modifiers with qt adapters. 2022-01-26 10:34:38 +03:00
23rd
0143d22a21 Split qt_adapters to separated files. 2022-01-26 10:33:28 +03:00
John Preston
3ff17a8789 Refactor image transformation interfaces. 2022-01-21 15:33:44 +03:00
John Preston
fe7b120003 Fix possible crash in dictionaries download.
Fixes #17258.
2022-01-05 01:04:38 +03:00
23rd
90dedb7b70 Added spoiler support to input field. 2021-12-29 21:22:33 +03:00
John Preston
2c36623cfb Add some icons to popup menus. 2021-12-29 21:22:33 +03:00
John Preston
5e7e7eaa83 FullMsgId rely on PeerId instead of ChannelId. 2021-12-22 10:11:57 +00:00
23rd
3647241f71 Removed unused MTP::Error from callbacks on fail. 2021-11-30 17:37:07 +04:00
John Preston
92e398e0b7 Support new skin color modifiers in rlottie. 2021-11-30 16:05:52 +04:00
23rd
b9c64499bd Moved code for api participants to separated file. 2021-11-26 18:00:21 +04:00
John Preston
4f7c728632 Update API scheme on layer 135. 2021-11-26 18:00:20 +04:00
John Preston
773755d70e Send as a channel in HistoryWidget. 2021-11-26 18:00:18 +04:00
John Preston
c534f3f22e Some internal HistoryItem refactoring.
Replace most IsServerMsgId / id <=> 0 with isRegular().
Track isLocal / isHistoryEntry in flags.
Remove toHistoryMessage.
2021-11-07 12:50:13 +04:00
23rd
27dc91e51a Moved management of selecting scroll to separated class in td_ui. 2021-10-30 21:22:51 +03:00
John Preston
7bc4b2c595 Add StickersSet::thumbnailBigFileBaseCacheKey. 2021-10-21 23:01:14 +04:00
Ilya Fedin
847c01d605 Add Qt 6 support
Tested only on Linux so far
2021-10-21 13:15:00 +04:00
23rd
80461bd9fe Moved ConfirmBox to Ui namespace. 2021-10-19 06:34:27 +03:00
23rd
6148edbc7d Moved ConfirmBox to td_ui. 2021-10-19 06:34:27 +03:00
John Preston
21ac2b8f3a Don't use MTP* for reply markup data. 2021-10-04 23:47:30 +04:00
John Preston
b78b27f517 Move dialogs_layout to dialogs/ui/. 2021-10-04 23:45:21 +04:00
23rd
cb8f49aea0 Removed Q_OBJECT from ScrollArea. 2021-09-30 18:45:38 +03:00
John Preston
1e660fc2a2 Allocate 64 bits for message ids. 2021-09-30 13:49:37 +04:00
John Preston
19ce1edc16 Use base::SafeRound instead of std::round.
Previous assertion violations because of NaN from std::round were
in video streaming, see commits 27d58ba07b, 8f5830d520.

Now the crashes happened in the ConvertScale() call from a background
thread when preparing an image from clipboard for sending to a chat.
2021-09-27 12:13:57 +04:00
John Preston
a566405598 Show correct emoticon in interaction-seen status. 2021-09-19 14:40:43 +03:00
John Preston
42cc24e167 Cache interactions in four cache keys. 2021-09-17 19:23:52 +03:00
John Preston
038f19d055 Beta version 3.0.5: Fix build on Linux. 2021-09-17 11:45:05 +03:00
John Preston
cca08e3946 Fix crash in emoji interactions. 2021-09-17 10:25:36 +03:00
John Preston
06798adce4 Accept skin colors and heart colors. 2021-09-17 10:25:36 +03:00
John Preston
34c0d97c54 Show emoji interaction seen status. 2021-09-17 10:25:36 +03:00
John Preston
4b7f594b0e Send emoji interaction seen requests. 2021-09-17 10:25:36 +03:00
John Preston
cfb43081c7 Play incoming interactions. 2021-09-17 10:25:36 +03:00
John Preston
bc2f96251f Limit amount of playing interactions. 2021-09-17 10:25:36 +03:00
John Preston
15f83892a1 Start emoji interactions playback. 2021-09-17 10:25:36 +03:00
John Preston
139b9723d7 Accumulate and send emoji interactions. 2021-09-17 10:25:36 +03:00
John Preston
d152782115 Load and reload interaction stickers. 2021-09-17 10:25:36 +03:00
John Preston
8069fdd873 Use base/random.h instead of openssl::RandomValue. 2021-09-15 13:42:22 +03:00
John Preston
7f20cc7b44 Update emoji to 13.1. 2021-09-14 15:14:25 +03:00
23rd
900a7d0b2b Appended references to const auto types in loop to prevent copying.
Suggested by Apple Clang.
2021-09-09 16:32:04 +03:00
John Preston
a6c98f4bb4 Update API scheme to layer 133. 2021-09-07 23:41:07 +03:00
23rd
2f1db4f449 Fixed sending of choosing type from field autocomplete. 2021-09-07 23:41:07 +03:00
John Preston
23e9e7b9f0 Remove for_const macro. 2021-09-06 13:13:26 +03:00
John Preston
1a4a9319f3 Custom colors in history_view_message module. 2021-09-06 13:13:26 +03:00
23rd
59977da2b4 Added choosing sticker action to field autocomplete. 2021-09-01 01:23:20 +03:00
23rd
8c17e3e578 Added sending action when choosing sticker. 2021-08-30 20:50:32 +03:00
John Preston
3cd0f9d189 Start non-unique ChatTheme. 2021-08-30 20:32:57 +03:00
John Preston
3dadcd9352 Animated transition on pattern-on-gradient resize. 2021-08-16 10:26:08 +03:00
John Preston
474a6a71d9 Move unread mentions menu to chat_helpers/send_context_menu. 2021-08-12 10:06:16 +03:00
John Preston
c79cd0b692 Use Images::Read instead of App::readImage. 2021-08-11 18:55:08 +03:00
John Preston
868c494299 Extract Mosaic::Layout::AbstractMosaicLayout. 2021-07-28 17:00:46 +03:00
John Preston
c170a86189 Fix build on Windows. 2021-07-28 15:59:42 +03:00
John Preston
22e77bf3af Don't use MTP* for ReplyMarkup flags. 2021-07-28 15:16:23 +03:00
23rd
dcc8a64d37 Removed App::sendBotCommand. 2021-07-27 02:50:08 +03:00
23rd
a030907598 Refactored sending bot commands. 2021-07-27 02:50:08 +03:00
23rd
34cac3092f Moved utils for sending bot commands to separated file. 2021-07-27 02:50:08 +03:00
23rd
93bcd90fd4 Provided more context for click handlers. 2021-07-27 02:18:49 +03:00
23rd
793f748d2e Replaced overview and inline mosaic layouts with new mosaic layout. 2021-07-26 17:38:51 +03:00
23rd
2256482ae0 Moved layout utils to td_ui. 2021-07-26 17:38:51 +03:00
23rd
73bb1382b1 Replaced MatrixRowShift with layout utils. 2021-07-23 15:42:17 +03:00
23rd
81c39af122 Replaced mosaic drawing in InlineBots::Layout::Inner. 2021-07-23 15:42:17 +03:00
23rd
9699aeb1cd Slightly simplified ChatHelpers::GifsListWidget. 2021-07-23 15:42:17 +03:00
23rd
c4d8d52aed Replaced mosaic drawing in ChatHelpers::GifsListWidget. 2021-07-23 15:42:17 +03:00
Ilya Fedin
ba9b72e038 Fix -Wunused-variable warnings with gcc 2021-07-19 22:31:27 +03:00
John Preston
4276b6cce0 Use rpl for Window::Theme::Background updates. 2021-07-15 16:42:36 +03:00
Ilya Fedin
79cc797aff Fix -Wunused-variable warnings 2021-07-13 21:43:34 +03:00
nyakze
a283049b34 Expand moderator mode + fix
Apparently for commands to work, they have to be bind to 1-9 keys, apart from any other alternative hotkeys. It should address this issue, as well as expanding to ease the usage on numpad.
2021-07-13 16:04:16 +03:00
John Preston
4206ff0483 Don't use MTP* for StickersSet flags. 2021-07-09 09:08:58 +03:00
John Preston
75090dedaa Don't store MTPInputStickerSet in data. 2021-07-08 22:08:59 +03:00
John Preston
2ffda9f240 Don't use MTP* for ChatAdminRight / ChatRestriction. 2021-07-08 13:34:06 +03:00
nyakze
68e351b7c8 Attempt to fix not working commands
Attempt to fix not working commands by using more conventional keys
2021-07-06 17:16:46 +03:00
John Preston
8eedc7b2ba Fix build on Windows. 2021-07-06 15:56:43 +03:00
23rd
a631a28092 Removed App::pixmapFromImageInPlace. 2021-07-06 12:13:06 +03:00
23rd
b2a1c10036 Removed masks panel when there are no masks. 2021-07-06 12:13:05 +03:00
23rd
2a58d01927 Removed search and featured buttons from masks panel. 2021-07-06 12:13:05 +03:00
23rd
de108c8efe Fixed removing masks set from StickersListWidget. 2021-07-06 12:13:05 +03:00
23rd
2d17bd02a3 Moved mask management to separate box. 2021-07-06 12:13:05 +03:00
23rd
8d62800e77 Moved stickerSetInstalled from ApiWrap to Data::Stickers. 2021-07-06 12:13:05 +03:00
23rd
1cdb83462e Added initial implementation of masks panel. 2021-07-06 12:13:05 +03:00
23rd
7d2b20e624 Made TabbedSelector more flexible. 2021-07-06 12:13:05 +03:00
John Preston
aaefeed3f1 Support custom keyboard placeholders. 2021-07-05 21:12:52 +03:00
John Preston
b930bc0e6d Track bot commands separately in different chats. 2021-07-02 20:41:48 +03:00
John Preston
93d99d6173 Track only strings in BotCommand struct. 2021-07-02 20:41:46 +03:00
John Preston
a8df3dcf91 Remove test code for animated path thumbnails. 2021-07-02 20:40:32 +03:00
John Preston
b22e2ffe1d Animate inline path thumbnails with sliding gradient. 2021-07-02 20:40:32 +03:00
John Preston
4124c2eb57 Show inline path thumbnails for stickers. 2021-07-02 13:13:48 +03:00
23rd
bb76818cc8 Split adaptive changed rpl::producer into two. 2021-06-24 11:25:35 +04:00
23rd
b422ec025e Removed Ui::show from classes that have pointer to Controller. 2021-06-17 10:57:45 +04:00
23rd
65779ec37e Removed Adaptive namespace from FieldAutocomplete. 2021-06-16 09:31:32 +03:00
23rd
daa14466e5 Replaced observable in Lang::CloudManager with rpl. 2021-06-16 09:31:32 +03:00
23rd
386fae952b Replaced observable in SessionController with rpl. 2021-06-16 09:31:32 +03:00
John Preston
f2286fdffd Fix possible crash in emoji suggestions. 2021-06-11 19:31:16 +04:00
John Preston
468d43c4c7 Don't send by Enter elements, chosen by mouse. 2021-06-11 14:20:00 +04:00
John Preston
eb8f709943 Show members list in PanelMode::Wide. 2021-05-24 22:45:13 +04:00
Daniil
d8ffc114d3 Revert number keys check 2021-04-28 09:38:23 +03:00
Daniil
23bd76a8dd Expand moderating mode some more
Revert key check, since number keys stopped working if bot have 
Add missing commands since last PR, also add keys to respect both keypad and regular keyboard users.
2021-04-28 09:38:23 +03:00
John Preston
5bb73d8d3d Move recent emoji and variants to common settings.
Fixes #16163, fixes #4018, partially fixes #10123.
2021-04-26 10:51:10 +04:00
John Preston
1342077dcb Use 48 bit [User/Chat/Channel]Id, 56 bit PeerId. 2021-04-09 15:05:00 +04:00
Ilya Fedin
4ffe1d3acc Use base::flat_map for pointer keys 2021-03-15 19:49:06 +03:00
Ilya Fedin
ae0b9141dd Trying to get rid of unused variables... 2021-03-15 11:40:44 +03:00
Ilya Fedin
c0c10689a1 Get rid of deprecated ranges::view usage 2021-03-13 19:14:58 +03:00
Ilya Fedin
c4dcf064d5 Avoid multiple .arg usage as suggested by clazy 2021-03-13 19:08:33 +03:00
Ilya Fedin
f25b2a2094 Apply autofixes from clazy 2021-03-13 15:25:47 +03:00
23rd
a5abe3d813 Added ability to Save / Delete GIFs from menu for inline bots.
Fixed #10511.
2021-03-13 12:59:12 +03:00
23rd
d4bb62d055 Slightly refactored uploading of edit media. 2021-03-13 12:59:11 +03:00
John Preston
68b0a85369 Rename RPCError to MTP::Error. 2021-03-12 16:58:26 +04:00
Ilya Fedin
23272430b4 Build with QT_NO_KEYWORDS 2021-03-04 12:07:54 +04:00
Daniil
3e379f3171 Expand moderating mode
Add additional moderating options.
2021-03-03 22:57:14 +04:00
John Preston
6511d0dfcf Update more icons in the compose controls. 2021-02-22 23:42:41 +04:00
John Preston
07f94cc184 Fix skin-colored animated emoji refresh. 2021-02-17 10:46:36 +04:00
John Preston
9a0edbd0c5 Update skin-colored animated emoji. 2021-02-17 10:46:36 +04:00
23rd
0b4d0b83c2 Removed App::wnd from classes that have pointer to Window::Controller. 2021-02-04 18:13:04 +04:00
John Preston
8f0e23bb25 Improve editing messages with link previews.
Now preview state can be one of (allowed, cancelled, empty-in-edit).

In case of editing a message without preview we set the state to
empty-in-edit and it changes to allowed if the links in the message
are changed somehow.

That way we don't need to cancel the preview when editing a message
with a cancelled preview and at the same time adding a link to
a message that had no preview in the first place will add a preview.
2021-01-29 15:27:17 +04:00
23rd
d4bbbdb65c Replaced rand_value util function with openssl::RandomValue. 2021-01-24 10:41:10 +03:00
23rd
dd01ece14a Replaced snap util function with std::clamp. 2021-01-24 10:41:10 +03:00
23rd
1ccfcc824c Updated code to be consistent with lib_ui. 2021-01-22 16:53:59 +04:00
23rd
a030911ad5 Fixed filling context menu in TabbedPanel between sections.
Fixed #10082.
2021-01-09 14:24:41 +03:00
John Preston
dde94d486b Change button round radius. 2020-12-08 11:19:23 +04:00
John Preston
25ffdcc919 Update Qt to 5.15.2. 2020-12-07 16:13:46 +04:00
John Preston
d40768f6b0 Use separate styles for group call boxes. 2020-12-01 09:45:23 +03:00
23rd
a2e4403b28 Slightly refactored code for menu with send options. 2020-11-19 18:11:37 +03:00
23rd
e1017380ec Fixed filling menu with send options for inline bots and autocomplete. 2020-11-19 18:11:37 +03:00
John Preston
f04b3da76a Add return from bot switch_pm to Scheduled/Replies. 2020-11-17 12:58:06 +03:00
John Preston
ac02e2be9e Add FieldAutocomplete to ComposeControls. 2020-11-17 12:56:51 +03:00
John Preston
74d2313784 Build Linux version with Qt 5.15.1 in CentOS 7 docker. 2020-11-06 11:21:34 +03:00
John Preston
263d6a30f2 Improve grouped files layout in chat. 2020-10-30 18:32:19 +03:00
John Preston
c2f0bcf933 Keep first game sticker frames inside the binary. 2020-10-30 18:32:19 +03:00
John Preston
7f956d32a6 Support slot machine game. 2020-10-30 18:32:18 +03:00
John Preston
8b96f4c214 Move Media::Clip::Reader and FileLocation to td_ui. 2020-10-30 18:32:18 +03:00
John Preston
05eb549a3d Move App::roundRect to Ui::FillRoundRect. 2020-10-30 18:32:18 +03:00
John Preston
ae298818a8 Implement message bar with animations. 2020-10-30 18:32:17 +03:00
John Preston
8634c1f7f3 Move lang keys to td_lang library. 2020-09-30 12:18:52 +03:00
John Preston
c535a7c564 Use MaskedInputField for URL input. 2020-09-29 19:03:29 +03:00
John Preston
ce91caa820 Fix build on macOS. 2020-09-29 19:03:23 +03:00
John Preston
f0e1d2fd02 'base::optional_variant<' -> 'std::variant<v::null_t,' 2020-09-29 19:03:19 +03:00
John Preston
734d834a20 Replace mapbox variant with std::variant. 2020-09-29 19:03:19 +03:00
23rd
6e3fb253b9 Added ability to remove recent stickers. 2020-08-21 16:23:44 +03:00
23rd
8a34f29329 Moved toggling of existing media to separate file. 2020-08-19 14:47:25 +03:00