John Preston
e2f0886950
Add option to blur chat background.
2019-02-07 19:36:30 +03:00
John Preston
f5cc93ec64
Decouple MTP::Instance from Core::App.
2019-02-01 10:48:31 +03:00
John Preston
93a967dc74
Add random_padding to dns requests.
2019-01-31 13:48:10 +03:00
John Preston
a70e72f75d
Application->Sandbox, Messenger->Application.
2019-01-23 12:51:58 +04:00
John Preston
314e30272b
Replace SingleTimer with base::Timer.
2019-01-18 16:41:08 +04:00
John Preston
2a0b9a44dd
Remove supergroup migrate messages.
2019-01-17 12:21:31 +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
548a0c8517
Fix MTP logging.
2019-01-17 12:20:50 +04:00
John Preston
f48ae29f22
Load emoji sets from the cloud.
2019-01-11 17:30:00 +04:00
23rd
be0b0c1984
Fixed an editing of unsupported messages.
2018-12-26 15:10:56 +04:00
John Preston
8d27d8efcf
Use cloud-based settings for p2p in calls.
2018-11-16 20:17:58 +04:00
John Preston
d0e48a02a1
Apply lang pack versions from config.
2018-11-16 20:17:58 +04:00
John Preston
162da089ec
Handle t.me/setlanguage links.
...
Also support custom langpacks with base langpacks.
2018-11-16 20:17:58 +04:00
John Preston
8b6e24e83d
Build alphas only for official targets.
2018-11-08 10:33:44 +04:00
John Preston
e482f041a8
Allow disabling even system proxy settings.
...
Fixes #4944 .
2018-11-05 18:52:01 +04:00
John Preston
c5d20a21f7
Beta version 1.4.4: Correct caption limit.
2018-10-17 14:43:18 +03:00
John Preston
2e5a0e056c
Move to std::optional.
2018-09-21 19:28:46 +03:00
John Preston
c4ca180745
Add call peer-to-peer setting in Privacy&Security.
2018-09-19 19:22:14 +03:00
John Preston
2e7f4c2f21
Use Storage::Cache::Database for file caching.
2018-09-01 18:56:08 +03:00
John Preston
cb371f09ac
Clear old versions of Storage::Cache::Database.
2018-09-01 18:56:08 +03:00
John Preston
5b88f4d3d2
Update API scheme.
2018-08-20 17:25:06 +03:00
John Preston
bdab477040
Update API scheme to layer 84.
2018-08-11 22:03:34 +03:00
John Preston
4c0551ebb1
Fix crash in tcp connection implementation.
2018-07-31 22:56:02 +03:00
John Preston
091d1157da
Fix clearing callbacks for timeout-ed requests.
2018-07-31 22:56:02 +03:00
John Preston
556f75ef6c
Rewrite TCP socket reading using bytes::vector.
...
I hope this fixes a strange assertion violation.
2018-07-11 17:56:09 +03:00
John Preston
a43dfc567c
Allow injecting fail handlers in export.
...
Handle CHANNEL_PRIVATE while exporting all channel messages.
2018-06-28 17:25:50 +01:00
John Preston
ff53404d5b
Update API scheme to layer 82.
2018-06-27 22:58:32 +01:00
John Preston
941288b58e
Handle new paddings in improved TCP protocol.
2018-06-27 22:58:31 +01:00
John Preston
22441ef80c
Handle improved protocol secrets.
2018-06-25 20:22:03 +01:00
John Preston
8c2f11de7d
Send correct paddings in improved TCP protocol.
2018-06-25 19:55:52 +01:00
John Preston
266102df2f
Some phrases fixed, some logs added.
2018-06-24 16:17:46 +01:00
John Preston
269bb94138
Closed beta 1.3.7.1: Fix build with GCC.
2018-06-22 01:44:28 +01:00
John Preston
36fb6dac89
Call finish takeout. Handle errors.
2018-06-21 14:50:56 +01:00
John Preston
5f01751660
Display errors in export UI.
...
All errors are now fatal errors :(
2018-06-19 13:35:21 +01:00
John Preston
c7aa5ed544
_DEBUG-test ConcurrentSender generic handlers.
2018-06-17 21:29:50 +01:00
John Preston
9d02e539c8
Update scheme for special export methods.
...
Export all saved contacts.
2018-06-16 20:48:38 +01:00
John Preston
83786ddeaf
Export chat messages photos and documents.
...
Also rename .visit() with .match() in MTP types.
Also add base::match_method() and base::match() for base::variant.
Also add base::match() and .match() for base::optional_variant.
2018-06-14 01:09:48 +03:00
John Preston
5a9d1a3fce
Add .visit(many, callbacks) method to MTP types.
2018-06-12 22:59:58 +03:00
John Preston
affe9defb5
Fix authorization import in FILE_MIGRATE case.
...
Regression was introduced in dd933cf61c
.
2018-06-12 16:30:00 +03:00
John Preston
cec8114b99
Add simple files and contacts export.
...
Also move all API calls in export to Export::ApiWrap.
2018-06-12 01:02:05 +03:00
John Preston
0a1a5ed70e
Use abstract export writer for different formats.
2018-06-12 01:02:05 +03:00
John Preston
c587c011d2
Start data export in lib_export.
2018-06-12 01:02:04 +03:00
John Preston
9ebeddbed8
Request, show and require accept for updated ToS.
2018-06-06 21:37:01 +03:00
John Preston
c85fd368fe
Possible fix of travis build.
2018-06-06 15:16:21 +03:00
John Preston
233be5ec13
Fix crash in web request destructors.
2018-06-06 12:32:38 +03:00
John Preston
72f95b984f
Replace cDebug() with Logs::DebugEnabled().
2018-06-05 21:51:05 +03:00
John Preston
a52392241d
Fix some possible crashes.
2018-06-04 22:48:17 +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
fae4b92d8d
Add store version label to sessions list.
2018-06-04 13:41:53 +03:00
John Preston
ead31757d7
Submit passport results.
2018-06-03 23:16:36 +03:00
John Preston
1392e05ab1
Move all gsl::byte helpers to base/bytes module.
2018-06-03 23:16:34 +03:00
John Preston
ddb4527159
Start passport support: handle link, receive form.
2018-06-03 23:16:33 +03:00
John Preston
e122353bfb
Show better information in sessions list.
2018-06-03 23:14:44 +03:00
John Preston
03037121aa
Add support for autoupdate through MTProto.
2018-05-30 01:00:36 +03:00
John Preston
59a1e13955
Use each AbstractConnection only for one time.
2018-05-28 22:43:14 +03:00
John Preston
4e858ba839
Improve connections debug logs.
2018-05-28 11:36:12 +03:00
John Preston
37bf9ffcff
Show bad proxy configuration error.
2018-05-24 16:40:19 +03:00
John Preston
017ec87d60
Replace FlatTextarea with InputField.
2018-05-22 13:45:22 +03:00
John Preston
8e442563f2
Enable checked auth key creation.
2018-05-20 23:20:48 +03:00
John Preston
f2a5a29d12
Alpha version 1.2.21: Fix build for Xcode.
2018-05-18 21:07:31 +03:00
John Preston
96f7c0c02e
Don't try to logout CDN dcs.
2018-05-18 19:41:59 +03:00
John Preston
425e56b3ea
Apply proxy settings in mtproto-key-destroyer.
2018-05-18 15:20:28 +03:00
John Preston
4478c0a143
Resolve domain names for proxy servers.
...
Also use dc_id-checked auth key creation.
Fixes #4695 .
2018-05-18 10:57:11 +03:00
John Preston
a053384618
Fix mtproto-proxy working with domain names.
...
Also refactor a bit TcpConnection and HttpConnection classes.
2018-05-17 13:27:49 +03:00
John Preston
d3f85b4c4e
Display channels promoted by proxy on top.
2018-05-13 21:26:35 +03:00
John Preston
8764da787b
Don't logout on some server-side problems.
2018-05-13 12:19:34 +03:00
John Preston
e3c6abfc3d
Fix possible crash in reply returns.
2018-05-10 14:56:36 +03:00
John Preston
257dfa6b3f
Improve phone rules checking.
2018-05-05 21:55:39 +03:00
John Preston
e0431d270b
Allow cdn requests through mtproto proxy.
2018-05-05 21:55:39 +03:00
John Preston
1af2769209
Closed beta 1.2.17.4: Fix option lookup.
2018-05-05 21:55:39 +03:00
John Preston
db7041f2dc
Send different dns requests for simple config.
2018-05-05 21:55:38 +03:00
John Preston
ad1f089802
Read autoupdate prefix from config.
2018-05-05 21:55:38 +03:00
John Preston
62c812858e
Improve config re-requesting.
2018-05-05 21:55:38 +03:00
John Preston
4bf66cb6e9
Better special config implementation.
2018-05-05 21:55:38 +03:00
John Preston
95fee543ec
Try all available endpoints from config.
2018-05-05 21:55:38 +03:00
John Preston
f794d8dbd8
Check proxy availability in ProxiesBox.
2018-05-05 21:55:38 +03:00
John Preston
900d1ddb36
Support multiple proxies in local storage.
2018-05-05 21:55:38 +03:00
John Preston
dc9483e07a
Fix possible deadlock.
...
Some unknown code (like getSession) was called while holding
_requestsByDcLock mutex which could lead to a deadlock.
Now all access points to _requestsByDc are simple.
2018-05-05 21:55:37 +03:00
John Preston
65f968ec1b
Update API scheme to layer 78.
2018-05-05 21:55:37 +03:00
John Preston
93f6d4b6e7
Support many config endpoints for one dc+params.
2018-05-05 21:55:37 +03:00
John Preston
7482025c10
Support work with different dcs on a single IP.
2018-05-05 21:55:37 +03:00
John Preston
909acb25fd
Requesting config if can't connect.
2018-05-05 21:55:37 +03:00
John Preston
4a9db99082
Use application level proxy settings.
2018-05-05 21:55:37 +03:00
John Zimmermann
a2606c4fc4
fix libressl-2.7 compat ( #4633 )
2018-04-28 21:57:02 +03:00
John Preston
38c20fc3c2
Return one old way for requesting special config.
2018-03-20 18:21:36 +04:00
John Preston
8ed167c5fa
Change domain fronting url and host header.
2018-03-11 22:55:28 +03:00
John Preston
a0eb64428e
Use new config fields for revoke settings.
2018-03-11 22:21:17 +03:00
John
73c0c4507a
fix build against libressl
2018-03-09 21:12:34 +03:00
John Preston
56fece6216
Move from req_pq to req_pq_multi in protocol impl.
2018-03-08 15:55:05 +03:00
John Preston
0f901b3728
Update API and use WebDocument for inline bots.
2018-03-06 16:49:44 +03:00
John Preston
7425e80f05
Use HistoryMedia as view, add Data::Media.
2018-02-08 12:20:48 +03:00
John Preston
97a9089ebf
Move draw / getState code to HistoryView::Message.
...
Item dimensions broken for now.
Also remove history.h from pch.
2018-02-08 12:20:48 +03:00
John Preston
ea7441ae77
Use single LEGAL file with license and copyright.
2018-01-03 13:23:14 +03:00
John Preston
06c724df01
Clear callbacks async in MTP::Instance.
...
Also fix previous build.
2018-01-02 16:44:12 +03:00
John Preston
ddf4a36bdc
Remove mtproto/session.h from precompiled header.
2017-12-18 16:40:15 +04:00
John Preston
14034c255e
Replace QSharedPointer with std::shared_ptr.
2017-12-18 13:07:18 +04:00
John Preston
4c9931ab02
Support grouped media rendering.
2017-12-16 20:50:42 +04:00
John Preston
97c15865a5
Move some code around.
...
Move logs:SignalHandlers to core/crash_reports:CrashReports.
Move all pre-launch windows to core/crash_report_window module.
Move some global code to core/launcher:Launcher.
It should replace settings / platform_specific module in some way.
2017-12-12 16:47:32 +04:00
John Preston
273ac5eaf1
Add some more public keys.
2017-12-08 20:26:27 +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
007ab3b7b8
Fix crash in RSA public key wrapper.
2017-12-07 09:34:11 +04:00
Nicholas Guriev
f813bb704f
Optimize key initialization
...
* Do not do redundant copying of numbers.
2017-12-07 09:15:10 +04:00
Nicholas Guriev
93809ec404
Fix build against OpenSSL 1.1
...
Closes : #3196
2017-12-07 09:15:10 +04:00
John Preston
1d85c8a6b6
API scheme updated to layer 73.
2017-12-05 12:44:27 +04:00
John Preston
e1c68892d4
Show third column only when explicitly requested.
...
This allows you to show info in layer from mention links.
2017-12-04 13:42:05 +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
2432845df2
Optimize and rename base::weak_unique_ptr.
...
Rename base::enable_weak_from_this -> base::has_weak_ptr.
Rename base::weak_unique_ptr -> base::weak_ptr.
Rename base::make_weak_unique -> base::make_weak.
Rename base/weak_unique_ptr.h -> base/weak_ptr.h
2017-11-30 21:33:27 +04:00
John Preston
ad6ddcb507
Fix crash in selecting unsent messages.
...
Also add some more checks in file downloads and serialization.
2017-11-30 11:14:31 +04:00
John Preston
6ca105a290
Minimal layer 72 support.
2017-11-20 23:54:05 +04:00
John Preston
ac99318f34
Use ranges:: algorithms instead of base::
2017-11-20 16:24:00 +04:00
John Preston
eb2719fad1
Added search to files and links shared media.
2017-11-16 07:59:08 +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
101d4f6444
Use std::function for base::lambda implementation.
...
base::lambda becomes just std::function and base::lambda_once becomes
base::unique_function - a move-only wrapper around std::function.
This is required because Visual C++ 2017 15.4.1 has a compiler bug
with static member variables of class templates, they may collide.
The std::function uses inheritance and virtual functions instead of
custom vtables done by static members of class templates used in
custom base::lambda implementation, so they work fine.
2017-11-16 07:59:08 +04:00
John Preston
54cc3e6315
Shared media multiple items selection.
2017-11-16 07:59:07 +04:00
John Preston
ed061252a5
Move to Xcode 9.0 and fix errors in Clang build.
2017-11-16 07:59:05 +04:00
John Preston
1a0e524b49
Optimize third column (create it only once).
...
Before historyPeer and historyPeerCanWrite were independent, so we
created a new Info section for both of them changing.
Now we use Data::CanWriteValue(peer) and rpl::flatten_latest().
2017-11-16 07:59:04 +04:00
John Preston
ffc20e4492
Divide structs into several data/ modules.
2017-11-16 07:59:04 +04:00
John Preston
41ed2d1b84
New storage for shared media messages index.
2017-11-16 07:59:02 +04:00
John Preston
5b77bd5aa0
Limit maximum IP length in case of corrupted data.
2017-09-04 15:21:52 +03:00
John Preston
df64c972d8
Replace QFlags with base::flags.
2017-09-03 15:45:47 +03:00
John Preston
25ffaaaa2d
Replace t_assert() with Assert().
...
Also use this assertions for Expects(), Ensures() and Unexpected().
2017-08-30 19:15:42 +03:00
John Preston
b3da99c302
Replace gsl::not_null<T*> with just not_null<T*>.
2017-08-30 19:15:41 +03:00
John Preston
782114d644
Add and use base::make_weak_unique() helper.
2017-08-30 19:15:28 +03:00
John Preston
0880c01a20
Replace group admins ContactsBox with PeerListBox.
2017-08-30 19:15:28 +03:00
John Preston
c8810f87b9
Move a lot of code from scheme.h to scheme.cpp.
2017-08-25 14:39:32 +03:00
John Preston
edbc3f8fde
Use QDataStream directly on QByteArray.
2017-08-25 14:39:30 +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
cf02a4cc31
API scheme updated to layer 70.
2017-07-23 12:34:40 +03:00
Nicholas Guriev
38a53687a0
Fix a couple of typos
...
Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru> (github: mymedia2)
2017-07-12 14:08:36 +03:00
John Preston
67f2daa43c
Closed beta 1001007003: Fix build for old OS X.
2017-06-30 09:21:44 +03:00
John Preston
c3db57a4fc
Closed beta 1001007003: Fix Xcode build.
2017-06-30 09:21:44 +03:00
John Preston
7245319351
Prefer static dc options when using a proxy.
2017-06-30 09:21:43 +03:00
John Preston
8ae159dd66
Add special dc options config request.
2017-06-29 11:40:07 +03:00
John Preston
5d0e89db5d
Switch to the server side changelogs.
2017-06-29 11:40:00 +03:00
John Preston
665a1acfd8
Apply language with app restart if logged in.
...
Confirm and restart if logged in, just quickly apply if not.
2017-06-29 11:39:54 +03:00
John Preston
d51fd7b3ad
Update intro change language link.
...
Also now MTP::Sender isn't bound to MTP::Instance, because Intro
Widget is MTP::Sender, but Intro::PhoneWidget destroys current
MTP::Instance.
2017-06-29 11:39:53 +03:00
John Preston
f5353080e7
Use Qt UI language if system was not determined.
...
Also rename platform/mac/specific_mac.cpp to .mm
2017-06-29 11:39:47 +03:00
John Preston
f5dfeb0c50
Support cloud languages list and switching.
...
Add Lang::Current().updated() observable for retranslating the UI.
2017-06-29 11:39:43 +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
110e7c8074
Finalize rename / move.
2017-06-29 11:39:38 +03:00
John Preston
a813793007
API scheme updated to layer 67.
2017-06-29 11:39:35 +03:00
John Preston
299143108b
Improve protocol support.
2017-05-17 16:39:17 +03:00
John Preston
52f7c8f064
Mark connection as inited only on a non-error response.
2017-05-17 14:01:58 +03:00
John Preston
30d000e139
Toggle calls controls using config and user flags.
...
Also use calls timeout values from config.
Also request config each time when the auth session changes.
2017-05-09 23:46:22 +03:00
John Preston
b267957abe
Apply all MTP Key generation checks to calls.
...
Also move all OpenSSL BN_* calls to base/openssl_help header.
2017-05-09 23:46:16 +03:00
John Preston
0a716036c2
Extract Calls::Call. Add a call button to TopBar.
2017-05-09 23:46:14 +03:00
John Preston
6418c9c718
Handle updates from MTP after RPC responses.
...
If some RPC responses and MTP updates are received together a fake
requestId in the negative range was used and that way updates were
processed before responses.
That could lead to an incorrect "out" message flag when sending
messages to supergroups, because a broadcast update about the new
message without "out" flag was handled before the request response.
Now a separate response map and updates list are used and responses
are handled always before the updates.
2017-04-30 17:23:57 +03:00
John Preston
8d28d0691f
API scheme updated to layer 66.
...
Support CDN file download.
2017-04-12 22:36:25 +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