Commit Graph

278 Commits

Author SHA1 Message Date
John Preston
ee94e78533 All mtproto downloads using DownloadMtprotoTask. 2019-12-05 11:32:33 +03:00
John Preston
51c1dc20e1 Unregister randomId if send message fails. 2019-09-09 11:13:41 +03:00
John Preston
ac8f924909 Show tdesktop cloud themes in a box. 2019-09-06 19:31:06 +03:00
John Preston
405ccb8580 Add editing of AddedByPhone privacy. 2019-08-29 11:44:03 +03:00
John Preston
caef7dde24 Bundle silent and scheduled to Api::SendOptions. 2019-08-27 19:10:37 +03:00
John Preston
3814b0833d Keep track of scheduled messages. 2019-08-27 19:10:37 +03:00
John Preston
3f2cc01f48 Allow sending silent messages. 2019-07-27 17:19:04 +02:00
John Preston
ff44094ded Rename AuthSession to Main::Session. 2019-07-24 13:45:24 +02:00
John Preston
f36e2981ca Display custom admin ranks in messages. 2019-07-24 08:02:20 +02:00
John Preston
c50ade565a Track sending and failed messages. 2019-07-24 08:02:20 +02:00
John Preston
04bf24288a Show slowmode error messages. 2019-07-24 08:02:20 +02:00
John Preston
328b090877 Save slowmode settings in groups. 2019-07-24 08:02:20 +02:00
John Preston
9d09cee1cc Unblock bots without restarting from Settings. 2019-07-04 16:26:53 +02:00
John Preston
d23fd3559a Refresh participants after transfer. 2019-06-21 11:06:47 +02:00
John Preston
5e3734d7bf ReportSpamPanel -> HistoryView::ContactStatus. 2019-06-21 11:06:45 +02:00
John Preston
d9e93fb5cc Fix possible crash in auth session destruction. 2019-06-17 14:23:50 +02:00
John Preston
371f1a51c3 Preload blocked users slice in Settings. 2019-05-27 15:09:47 +02:00
John Preston
8660f976a9 Add phone number privacy.
Also move calls peer-to-peer privacy inside calls privacy.
2019-05-27 15:09:15 +02:00
John Preston
6b80ff4bcc Support groups in privacy settings. 2019-05-27 15:09:12 +02:00
John Preston
c4aac5fa0e Update API scheme to layer 100. 2019-05-27 15:09:06 +02:00
John Preston
2d1dcb36cb Use folder_id / still_unread_count from updates. 2019-05-01 16:11:38 +04:00
John Preston
8fd811517b Count unread correctly in folders. 2019-05-01 16:11:37 +04:00
John Preston
58519300ea Support pinned chats in folders. 2019-05-01 16:11:37 +04:00
John Preston
0367319934 Load folder dialogs list. 2019-05-01 16:11:35 +04:00
John Preston
305a611211 Load dialogs list in ApiWrap and Data::Session. 2019-05-01 16:11:34 +04:00
John Preston
76c3e9a529 Display title and userpic of archived chats. 2019-05-01 16:11:14 +04:00
John Preston
9bf8a8108d Comment out non-folder feed code. 2019-04-25 14:16:30 +04:00
John Preston
5deee18247 Use channels.exportMessageLink to check links. 2019-04-05 15:50:16 +04:00
23rd
bd653dfdff Refactored ApiWrap.
- Joined editUploadedPhoto with editUploadedDocument.
2019-04-03 20:00:12 +03:00
23rd
5d8888bb8b Refactored code.
- Refactored passing message id to edit media.
 - Removed get/setEditMedia from mainwidget.
 - Combined onEditMedia and onSendFileConfirm in single method.
 - Added argument in FileLoadTask to pass message id to edit media.
 - Renamed flags in apiwrap.
 - Added check for allowing edit media when use clipboard.
 - Removed unused fileIsValidForAlbum.
 - Removed LOGs.
 - Replaced _isNotAlbum with _isAlbum.
 - Removed _viaRemoteContent.
 - Removed _newMediaPath.
 - Added empty() to MessageGroupId.
2019-04-02 18:14:12 +04:00
23rd
be58e23775 Init edit media. 2019-04-02 18:14:11 +04:00
John Preston
eb1825defd Add revoking of full history. 2019-03-24 12:12:44 +04:00
John Preston
dd8c526fb7 Prepare code for revoking of full history. 2019-03-24 12:12:43 +04:00
John Preston
81862215b4 Add forwards and profile photo privacy settings. 2019-03-24 12:12:42 +04:00
23rd
f48d8538c0 Added ability to see attached stickers on photos. 2019-03-10 22:10:36 +04:00
John Preston
fe618bd652 Use crl::time/now instead of TimeMs/getms. 2019-02-19 11:06:33 +04:00
John Preston
f506a5ea6c Save wallpaper settings locally. 2019-01-29 14:52:33 +03:00
John Preston
314e30272b Replace SingleTimer with base::Timer. 2019-01-18 16:41:08 +04:00
John Preston
61b9a32504 Add 'Contact joined' notifications setting. 2019-01-18 16:41:08 +04:00
John Preston
1894b8fcf7 Handle t.me/bg links with wallpapers / colors. 2019-01-18 16:41:07 +04:00
John Preston
287b3509ab Optimize getPeerDialog requests. 2019-01-17 12:21:31 +04:00
John Preston
2a0b9a44dd Remove supergroup migrate messages. 2019-01-17 12:21:31 +04:00
John Preston
9728ddeaf9 Handle migration to supergroups in boxes. 2019-01-17 12:21:30 +04:00
John Preston
3c44bdb6b7 Support auto-migrate to supergroups. 2019-01-17 12:21:30 +04:00
John Preston
67d12fa6d2 Improve update handling for legacy chats. 2019-01-17 12:21:30 +04:00
John Preston
a605c110a8 Support legacy groups in participant boxes. 2019-01-17 12:21:29 +04:00
John Preston
18c6be0d3b Unify legacy and megagroups information edit. 2019-01-17 12:21:29 +04:00
John Preston
eff90395b6 Add EditPeerPermissionsBox. 2019-01-17 12:21:29 +04:00
John Preston
c5a41e1f55 Divide data/data_peer and remove from PCH. 2019-01-17 12:21:29 +04:00
John Preston
d2d6b319b6 Update API scheme to layer 93. Broken. 2019-01-17 12:21:28 +04:00
John Preston
4002739682 Suggest adding bots to channels as admins. 2018-12-28 15:42:58 +04:00
John Preston
6f176803d4 Reload poll data each 30 seconds without update. 2018-12-24 21:03:53 +04:00
John Preston
b6f7832745 Add create poll box from groups three-dot menu. 2018-12-22 10:29:03 +04:00
John Preston
74c1db740d Implement polls voting and actions. 2018-12-21 17:09:33 +04:00
John Preston
61add763ae Restart instead of Unblock for bots. 2018-12-04 15:46:07 +04:00
John Preston
59ecf375b0 Move tg:// handlers to a separate module.
Also move joinGroupByHash and stickerSetBox from MainWidget.
2018-11-26 17:31:13 +04:00
John Preston
8d27d8efcf Use cloud-based settings for p2p in calls. 2018-11-16 20:17:58 +04:00
John Preston
631e51a493 Hashtag search results as dialogs (support). 2018-10-09 19:27:18 +03:00
John Preston
be6e329e94 Don't switch chats on ctrl+shift+send (support). 2018-10-09 19:27:18 +03:00
John Preston
a70613d929 Fix client side generated changelogs display.
Also use message date if available in MediaView.
2018-09-27 23:31:48 +03:00
John Preston
2e5a0e056c Move to std::optional. 2018-09-21 19:28:46 +03:00
John Preston
fe9f02e485 Improve self-destruct setting edit. 2018-09-19 19:22:14 +03:00
John Preston
0c8709ca5f Replace App::self() with Auth().user().
Always have self Auth().user() when AuthSession exists.
2018-09-19 19:22:13 +03:00
John Preston
12ebae01b0 Show current privacy values in settings section. 2018-09-19 19:22:13 +03:00
John Preston
bbe6d2d13b Implement information settings section. 2018-09-19 19:22:13 +03:00
John Preston
633ff4b60e Implement privacy and security settings section. 2018-09-19 19:22:13 +03:00
John Preston
8c1cc51c2e Move peer photo update from Messenger to ApiWrap. 2018-09-19 19:22:13 +03:00
John Preston
e2207e33ef Add FAQ and support buttons to settings. 2018-09-19 19:22:13 +03:00
John Preston
5a487bc30c Refresh file references in saveGif/faveSticker. 2018-08-20 17:26:28 +03:00
John Preston
c913c77fef Refresh file references when sending stickers. 2018-08-20 17:26:28 +03:00
John Preston
557d363d02 Refresh file references when downloading files. 2018-08-20 17:26:28 +03:00
John Preston
35c759c6bc Mark [un]read from chats list. 2018-06-27 22:58:32 +01:00
John Preston
33095966af Move sendMessage and sendInlineResult to ApiWrap. 2018-06-27 22:58:32 +01:00
John Preston
866c5e9b7b Request common notify settings when needed.
If user / group has default notify settings we need common user
or common group notify settings to display the badge properly.
2018-06-06 22:56:35 +03:00
John Preston
9ebeddbed8 Request, show and require accept for updated ToS. 2018-06-06 21:37:01 +03:00
John Preston
dd81f5d59f Replace base::lambda with shorter term.
base::lambda -> Fn (type alias for std::function).
base::lambda_once -> FnMut (type alias for base::unique_function).
base::lambda_guarded -> crl::guard.
base::lambda_call_type_t -> crl::deduced_call_type.
2018-06-04 18:38:27 +03:00
John Preston
67e698a374 Add support for requesting deep link info.
Also update API scheme.
Also remove auth.checkPhone requests.
2018-06-03 23:16:37 +03:00
John Preston
734c410879 New notifications API, defaults for users/chats. 2018-05-30 18:44:46 +03:00
John Preston
5e7642b42a Support markdown and replaces in media captions. 2018-05-24 16:03:21 +03:00
John Preston
d3f85b4c4e Display channels promoted by proxy on top. 2018-05-13 21:26:35 +03:00
John Preston
3406f88fdc Single place for joining channels, in ApiWrap. 2018-03-20 01:09:03 +04:00
Marco Trevisan
9dc03c4f0f Linux ARM compile fixes (#4399)
This fixes errors when compiling in ARM
2018-03-09 23:48:47 +03:00
John Preston
90179188b9 Improve sticker by emoji ordering.
First display recent by send/install date, then trending, then other.
2018-03-08 00:26:35 +03:00
John Preston
f0a95032a5 Show cloud stickers by emoji. 2018-03-07 16:53:12 +03:00
John Preston
ee182ea684 API scheme downgraded to layer 76. 2018-03-06 20:48:24 +03:00
John Preston
f066f3f139 Enable jump to date in feed. 2018-02-22 00:17:36 +03:00
John Preston
17a4d19beb Add a create feed channels list box. 2018-02-20 19:56:41 +03:00
John Preston
74aa1ad71e Ungroup all feed channels from context menu. 2018-02-18 17:00:14 +03:00
John Preston
906cb95e67 Channels list in feed info with leave channel. 2018-02-10 01:14:26 +03:00
John Preston
3c4c466f8e Add cashtags and bot allowed service messages. 2018-02-08 12:20:55 +03:00
John Preston
8bacc74d8b Request dialog list entries when needed.
Also save the original server-side int32 date in HistoryItems.
2018-02-08 12:20:54 +03:00
John Preston
0c5efb935d Read feed while scrolling. 2018-02-08 12:20:54 +03:00
John Preston
a7f67c4bc9 Better chats list entries management.
Make unread counts and last message base::optional<>.
Remove ChannelHistory.
2018-02-08 12:20:54 +03:00
John Preston
280ddb4629 Request full feed channels list before messages. 2018-02-08 12:20:53 +03:00
John Preston
17b913fb13 Fix feed messages loading both ways. 2018-02-08 12:20:53 +03:00
John Preston
65df137610 Add group/ungroup action in channel peer menu. 2018-02-08 12:20:51 +03:00
John Preston
8a56ede187 Move all (item/view/media) maps to Data::Session. 2018-02-08 12:20:49 +03:00
John Preston
794e31505b First version of feed section view. 2018-02-08 12:20:46 +03:00
John Preston
9d2239291d Add support for pinned feeds management. 2018-02-08 12:20:46 +03:00
John Preston
139ef5411a Prepare code for dialogFeed handling. 2018-02-08 12:20:45 +03:00
John Preston
ac57000437 Move contacts list loading to ApiWrap. 2018-02-08 12:20:45 +03:00
John Preston
ea7441ae77 Use single LEGAL file with license and copyright. 2018-01-03 13:23:14 +03:00
John Preston
2df4d19474 Move changelogs from ApiWrap to a separate module. 2017-12-29 21:17:07 +03:00
John Preston
21f4bbbe7b Update kicked count in Channel Info box. 2017-12-26 19:20:08 +03:00
John Preston
5d18d7c813 Send album after cancel of some media uploads.
Also display checks when part of the album medias are uploaded.
2017-12-26 19:20:07 +03:00
John Preston
ff65daa9fe Remove special case in SendFilesBox for an image. 2017-12-26 19:20:06 +03:00
John Preston
3b3a705a67 First working code for sending albums. 2017-12-26 19:20:06 +03:00
John Preston
f8963d7e4b Read silent flag from PeerData, not SilentToggle. 2017-12-08 15:52:12 +04:00
John Preston
5bc47e5203 Move shareContact and readServerHistory to ApiWrap.
Also allow non-confirming contact info sharing to Saved Messages.
2017-12-07 17:43:05 +04:00
John Preston
1473c14668 Forward messages to Saved Messages instantly. 2017-12-06 17:56:40 +04:00
John Preston
f3c8da4819 Request all admins when first opening a supergroup. 2017-12-03 20:43:42 +04:00
John Preston
85b3d3f64d Display admin badges in supergroups.
Also prefer std containers to Qt and OrderedSet in data_peer.
2017-12-01 22:38:44 +04:00
John Preston
c10588a7dc Merge group-supergroup history in jump-to-date.
Fixes #4094.
2017-11-30 16:50:13 +04:00
John Preston
196ff7f4c1 Don't apply count from getParticipants(Recent). 2017-11-28 22:30:01 +04:00
John Preston
efdba3a482 Handle errors in getMessages(). 2017-11-23 19:41:13 +04:00
John Preston
5803edb77b Add members from info to mgInfo->lastParticipants. 2017-11-22 13:56:00 +04:00
John Preston
2387b66e86 Allow supergroup members to clear history. 2017-11-22 12:04:24 +04:00
John Preston
6ca105a290 Minimal layer 72 support. 2017-11-20 23:54:05 +04:00
John Preston
f1f955b7ac Pass already-members when adding members to channel. 2017-11-19 18:41:52 +04:00
John Preston
554eb3a342 Move stickers state variables to AuthSessionData.
Also allow to click on the selected set when choosing megagroup
sticker set and allow to paste a t.me link to the set there.
2017-11-16 07:59:09 +04:00
John Preston
a27edcad1c Extract SparseIdsList module from SharedMedia.
This way it can be reused in search results management.
2017-11-16 07:59:08 +04:00
John Preston
fddcdf359b Use not type-erased producers in code. 2017-11-16 07:59:05 +04:00
John Preston
5e7aa4ff81 Move third column from HistoryWidget to MainWidget. 2017-11-16 07:59:03 +04:00
John Preston
2690618da2 Add Storage::UserPhotos and UserPhotosSlice. 2017-11-16 07:59:02 +04:00
John Preston
2363a6bd44 Add SharedMediaSlice to observe shared media.
Start testing / using it in MediaView.
2017-11-16 07:59:02 +04:00
John Preston
b3da99c302 Replace gsl::not_null<T*> with just not_null<T*>. 2017-08-30 19:15:41 +03:00
John Preston
0880c01a20 Replace group admins ContactsBox with PeerListBox. 2017-08-30 19:15:28 +03:00
John Preston
e209737b1a Display and follow unread mentions in history. 2017-08-30 19:15:13 +03:00
John Preston
f04b25ea26 Allow setting group stickers set. 2017-08-25 14:39:19 +03:00
John Preston
070456882e Manage faved stickers from sticker context menu. 2017-08-25 14:39:09 +03:00
John Preston
667eb288d7 Add faved stickers set loading and saving.
Also move stickers loading methods to ApiWrap.
2017-08-25 12:58:13 +03:00
John Preston
91fda6b654 Add search from group member button to dialogs. 2017-08-01 21:15:02 +03:00
John Preston
949104d879 Improve queued by pts updates handling.
The updates are ordered by pts and applied in the correct order.
Also some pts-dependent updates handling was moved to ApiWrap.
2017-07-14 14:57:05 +03:00
John Preston
f38fad2f92 Correctly apply edit admin in channel.
For example update adminCount / membersCount. For that we pass not
only the newRights values, but also oldRights values to applyEdit*().
2017-07-06 00:11:49 +03:00
John Preston
397797aac7 Add default changelog for the new stable version.
Also add a non-translated changelog for the new alpha/beta versions.
2017-07-04 18:32:04 +03:00
John Preston
7b496b3741 Improve in-app changelogs for alpha version. 2017-06-30 13:32:10 +03:00
John Preston
5d0e89db5d Switch to the server side changelogs. 2017-06-29 11:40:00 +03:00
John Preston
139d4e72b5 Start cloud langpack support.
Change the way langpacks are stored.
Support custom langpacks in the new storage.
2017-06-29 11:39:42 +03:00
John Preston
e050e270fc Try to hangup current call when quitting the app. 2017-05-09 23:46:26 +03:00
John Preston
d4af14041c Fix build for OS X 10.6-10.7.
Qt 5.3.2 doesn't support QTimer::singleShot(delay, lambda).
2017-04-11 18:44:11 +03:00
John Preston
38f94c63e9 Add blocked users list in supergroups profiles. 2017-04-07 18:13:22 +03:00
John Preston
34ab04cbe6 Add lambda-based checked timers.
Also ApiWrap is now not a QObject.
2017-04-07 18:13:21 +03:00
John Preston
0d0307e175 Move ApiWrap to AuthSession.
Also send all ApiWrap requests as an MTP::Sender.
Also create AuthSession only after starting MTProto.
2017-04-07 18:13:19 +03:00
John Preston
835b1801bc Remove Q_OBJECT dependency from ApiWrap.
Also remove it from SingleDelayedCall -> SingleQueuedInvocation.
2017-04-07 18:13:19 +03:00
John Preston
fc77b0a51c Save privacy in ApiWrap. Handle privacy updates. 2017-03-18 12:49:47 +03:00
John Preston
c207743338 Made base::lambda a copyable value type.
Now base::lambda can be copied and can wrap any immutable lambda.
For mutable lambdas there is base::lambda_once (which you're
supposed to call only once to pass data through lambda captures,
for example by using std::unique_ptr). Generally base::lambda is
passed by value and base::lambda_once is passed by rvalue reference.
2017-02-26 21:01:23 +03:00
John Preston
7fb1463c43 Version 1.0 stable: bump copyright date to 2017. 2017-01-11 23:02:13 +04:00
John Preston
7bb3b4d807 Common groups profile block done. Moved to layer 59.
Also profile block modules were renamed.
2016-12-30 17:52:42 +04:00
John Preston
6e0394dd42 Stickers box redesigned. 2016-12-30 17:52:28 +04:00
John Preston
e880c4876e Strict alignment request for base::lambda. Various improvements. 2016-12-30 17:52:21 +04:00