John Preston
fe618bd652
Use crl::time/now instead of TimeMs/getms.
2019-02-19 11:06:33 +04:00
John Preston
d208236994
Accept binary_guard in crl::guard().
2019-02-17 15:56:07 +04:00
John Preston
a70e72f75d
Application->Sandbox, Messenger->Application.
2019-01-23 12:51:58 +04:00
John Preston
805e4d01e7
Allow re-downloading failed media.
2019-01-21 10:49:44 +04:00
John Preston
314e30272b
Replace SingleTimer with base::Timer.
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
c5a41e1f55
Divide data/data_peer and remove from PCH.
2019-01-17 12:21:29 +04:00
John Preston
3461f3dfc7
Destroy file loaders not delayed.
2018-11-26 11:33:29 +04:00
John Preston
4b5b79e415
Use final Image with different Images::Source-s.
2018-11-04 15:51:37 +04:00
John Preston
9f90d3a7fc
Load maps using mtproto instead of google.
2018-10-09 19:27:18 +03:00
John Preston
d485a05935
Reorder chat settings sections.
2018-09-28 14:20:36 +03:00
John Preston
2e5a0e056c
Move to std::optional.
2018-09-21 19:28:46 +03:00
John Preston
4b87363a20
Check value size before putting to cache db.
2018-09-04 22:37:22 +03:00
John Preston
55f60866cb
Set correct cache tags for different file types.
2018-09-01 18:56:08 +03:00
John Preston
e2f08d4161
Write uint8 tags to Database and count stats.
...
Also pass rvalues to Database where copies are required anyway.
2018-09-01 18:56:08 +03:00
John Preston
2e7f4c2f21
Use Storage::Cache::Database for file caching.
2018-09-01 18:56:08 +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
839885910c
Pass FileOrigin in all file downloads.
2018-08-20 17:26:28 +03:00
John Preston
ee16070abe
Update API scheme to layer 86.
2018-08-20 17:26:27 +03:00
John Preston
8c2f11de7d
Send correct paddings in improved TCP protocol.
2018-06-25 19:55:52 +01:00
John Preston
5ed15cd0b3
Fix EditColorBox.
...
Regression was introduced in bfc748cd31
.
Fixes #4803 .
2018-06-06 13:04:37 +03:00
John Preston
2bc60fa54f
Save secure files to local storage.
2018-06-03 23:16:34 +03:00
John Preston
1392e05ab1
Move all gsl::byte helpers to base/bytes module.
2018-06-03 23:16:34 +03:00
John Preston
b2014f403e
Secure files upload / download support.
2018-06-03 23:16:34 +03:00
John Preston
4a9db99082
Use application level proxy settings.
2018-05-05 21:55:37 +03:00
John Preston
0f901b3728
Update API and use WebDocument for inline bots.
2018-03-06 16:49:44 +03:00
John Preston
ea7441ae77
Use single LEGAL file with license and copyright.
2018-01-03 13:23:14 +03: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
a27ea2d631
Fix possible crash in mtpFileLoader.
...
If several cdn file parts hashes are received in getCdnFileHashesDone
and some middle one of them cancels the entire loader (for example
because of a file write error) a !_finished assert violation happens.
2017-12-08 17:13:13 +04:00
John Preston
001be82566
Add some more checks to file downloader.
2017-12-02 12:32:43 +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
ffc20e4492
Divide structs into several data/ modules.
2017-11-16 07:59:04 +04: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
f2801d4775
Fix possible crash in file download after error.
...
Regression was introduced in 2fa2fa41c5
.
In file download failed handler we suggest to try to load the file
once again to the same location. After some changes we started to
forget filename before failed handler. That resulted in large files
loading to memory instead of hard drive.
Add a precondition in FileLoader to prevent such bugs in the future.
2017-08-30 19:15:34 +03:00
John Preston
ab35829358
Remove App::app(), App::uploader(), App::api().
...
Also use Auth() instead of AuthSession::Current*().
2017-08-25 14:39:18 +03:00
John Preston
9d81ea59dd
Attempt to fix an out of memory crash.
2017-08-01 21:14:43 +03:00
John Preston
80ee40eb18
Add debug info for out of memory crash.
2017-07-27 13:14:39 +03:00
John Preston
0e059ec788
Version 1.1.16: Add some debug info.
2017-07-26 17:56:01 +03:00
John Preston
2e0513a30f
Check CDN file hashes.
2017-07-23 12:34:41 +03:00
John Preston
90311dbf24
Fix CDN file download.
2017-07-18 22:01:22 +03:00
John Preston
8a8e101cd0
Fix crash in file downloader destruction.
...
Regression was introduced in 835b1801bc
.
We need to destroy all FileLoader instances before destroying the
Downloader instance, because they hold pointers to it and call its
methods in destructor if they need to cancel some MTP requests.
2017-04-15 20:39:32 +03:00
John Preston
af28e3b0d7
Alpha 1.0.32: Fix build in Xcode.
2017-04-12 23:28:04 +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
835b1801bc
Remove Q_OBJECT dependency from ApiWrap.
...
Also remove it from SingleDelayedCall -> SingleQueuedInvocation.
2017-04-07 18:13:19 +03:00
John Preston
a7d0473a1a
WebDocument without size is allowed to load.
...
We load a WebDocument with an unknown size the same way as we load
normal photos with FileLocation, that doesn't contain size as well.
If the size information from WebDocument and upload.WebFile is
inconsistent we still fail to load the file.
2017-03-30 12:49:15 +03:00
John Preston
31e3c6a2c6
WebDocument wrap to HistoryPhoto supported.
...
Only WebDocument with a valid 'size' field value and with a valid
'documentAttributeImageSize' attribute works wrapped as a photo.
2017-03-30 12:49:15 +03:00
John Preston
d91a2403b0
Use refs in AuthSession part getters.
...
Also use only AuthSession data for Contacts/Dialogs loaded state.
2017-03-15 19:24:06 +03:00
John Preston
f2465eba73
Make MTPstring and MTPvector value types.
...
Also move MTPstring implementation to QByteArray.
2017-03-10 23:27:26 +03:00
John Preston
81790b2271
Notifications management moved to AuthSession.
...
Also implemented Global::WorkMode() as an base::Variable.
2017-03-06 18:38:15 +03:00