John Preston
90f5f7dded
Fix possible crash in timer timeout values.
2017-12-08 18:15:00 +04:00
John Preston
68009b6fba
Refactor userpic storage and access in PeerData.
2017-12-05 11:58:18 +04:00
John Preston
62568daffe
Refactor NotifySettings in PeerData.
2017-12-04 21:48:45 +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
2387b66e86
Allow supergroup members to clear history.
2017-11-22 12:04:24 +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
aec496d520
Remove RTL Override symbols from filenames.
2017-11-16 07:59:09 +04:00
John Preston
eb2719fad1
Added search to files and links shared media.
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
65cc4d3fbc
Support item repaint in Info media overview.
2017-11-16 07:59:06 +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
f2a5862714
Add members list to info profile.
2017-11-16 07:59:04 +04:00
John Preston
449986456e
Add SharedMediaSliceMerged for migrated histories.
2017-11-16 07:59:02 +04:00
John Preston
d46a5f693f
Remove unused lang phrases and some code.
2017-09-28 19:18:27 +03:00
John Preston
df64c972d8
Replace QFlags with base::flags.
2017-09-03 15:45:47 +03:00
John Preston
48e2a5472e
Return not_null<History*> in App::history().
2017-09-03 15:45:43 +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
e13ed9b909
Remove main()->peerUpdated and some other signals.
2017-08-30 19:15:36 +03:00
John Preston
b08732cf28
Move MediaView from MainWindow to Messenger.
2017-08-25 14:39:27 +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
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
2f816942b8
Use objects instead of pointers for corners.
...
Also don't change mask corner images when color theme is changed.
This prevents race condition in mask corner images access, because
the GIF frame readers access mask corner images from other threads.
2017-07-13 17:42:46 +03:00
John Preston
da0d78135d
Some refactoring in working with text entities.
...
Also move this code to TextUtilities namespace.
2017-07-06 14:37:42 +03:00
John Preston
75fdd5315f
Add some more colors for theming.
2017-06-30 09:21:44 +03:00
John Preston
839e59075d
Display log entry original data in HistoryMessage.
2017-06-30 09:21:41 +03:00
John Preston
401bc86f27
Closed beta 1001007002: New channel rights.
...
Also fix build in Xcode.
2017-06-30 09:21:41 +03:00
John Preston
7d2d5c6100
Edit admin and restricted rights in channels.
2017-06-29 11:40:11 +03:00
John Preston
330b4a0b00
API scheme updated to layer 68.
2017-06-29 11:40:08 +03:00
John Preston
110e7c8074
Finalize rename / move.
2017-06-29 11:39:38 +03:00
John Preston
25587d7e8e
Replace different side enums with RectPart.
...
Including Ui::Shadow::Side, App::RectPart and ImportantTooltip::Side.
2017-05-24 16:25:20 +03:00
John Preston
ee6d80673a
Snap floating player to column and corner.
2017-05-24 16:25:17 +03:00
John Preston
565b56fb5f
Pause all media if a call is created.
...
Pause video, voice messages, songs and stop video messages.
2017-05-12 20:44:18 +03:00
John Preston
2e816f2a67
Play notification sound using Media::Audio::Track.
2017-05-09 23:46:30 +03:00
John Preston
6f89d01452
Add new Media::Audio::Instance for audio tracks.
...
Move some audio-related code from Media::Player to Media::Audio.
2017-05-09 23:46:29 +03:00
John Preston
e050e270fc
Try to hangup current call when quitting the app.
2017-05-09 23:46:26 +03:00
John Preston
cbf040b4dc
Crop round video messages to a circle.
...
Also display unread media dot like in voice messages.
2017-04-12 22:37: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
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
5444b8166c
Finalize rename / move of files.
2017-04-07 18:13:18 +03:00
John Preston
e8ed307278
Add search in GIFs to EmojiPanel.
2017-03-31 18:58:59 +03:00
John Preston
d41372dccd
Allow MTP_flags(0) and MTP_flags(single_flag).
2017-03-25 18:42:01 +03:00
John Preston
fc77b0a51c
Save privacy in ApiWrap. Handle privacy updates.
2017-03-18 12:49:47 +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
1395237810
Fix crash in notifications.
...
~HistoryItem() sometimes causes a queued notification to show.
Custom notifications depend on MainWindow and it is destroyed
already in clearHistories(), so clear the notifications queue first.
2017-03-12 11:49:44 +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
021454dbd4
Add .jpg to inputFile filename when photo is sent.
...
Server has some extensions checking for inputMediaUploadedPhoto,
so force the extension to be .jpg anyway. It doesn't matter,
because the filename from inputFile is not used anywhere.
Also own PhotoData::UploadingData through std::unique_ptr.
2017-03-10 18:55:34 +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
John Preston
83720d8789
Finalizing file renaming.
2017-03-04 13:23:56 +03:00