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
b9ad8bb700
Feed top bar placeholder.
2018-02-08 12:20:51 +03:00
John Preston
ebd4651ac2
Manage unread bar using HistoryView::Element-s.
2018-02-08 12:20:50 +03:00
John Preston
f9154c4ed0
Fix albums layout and editing in feed.
2018-02-08 12:20:50 +03:00
John Preston
b91ebad8be
Improve items resize in history and feed.
2018-02-08 12:20:50 +03:00
John Preston
04c8c95634
Use notify* instead of mark* in Data::Session.
2018-02-08 12:20:49 +03:00
John Preston
8a56ede187
Move all (item/view/media) maps to Data::Session.
2018-02-08 12:20:49 +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
bee474f6e9
Remove history_item and layout from pch.
...
Also move some code to separate modules.
Also create history item views by Window::Controller.
2018-02-08 12:20:47 +03:00
John Preston
062b0b2165
Save item views in App::*Item() variables.
...
Also remove App::contextItem.
Also use owning pointers for history context menus.
2018-02-08 12:20:47 +03:00
John Preston
794e31505b
First version of feed section view.
2018-02-08 12:20:46 +03:00
John Preston
a2891807f8
Prepare dialogs to hold a history or a feed.
2018-02-08 12:20:46 +03:00
John Preston
6a9556d42c
Move non-settings session data to Data::Session.
...
Rename AuthSessionData to AuthSessionSettings, move data away.
2018-02-08 12:20:46 +03:00
John Preston
724fe65d72
Start feeds support.
2018-02-08 12:20:45 +03:00
John Preston
46612ef128
Remove Notify::userIsContactChanged().
...
Replace with Notify::peerUpdatedDelayed().
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
2868899d81
Fix possible assertion violation.
...
Allow removing local HistoryItem's after the album was already sent.
2018-01-03 12:06:02 +03:00
John Preston
6796ac688a
Apply web page media updates.
2017-12-31 12:55:08 +03:00
John Preston
86c0dfb295
Read "participants_count" field from c_channel().
2017-12-26 19:20:08 +03:00
John Preston
1fc7dabd3e
Allow media reordering when sending an album.
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
255dbf9405
Fix indexing of shared media.
...
Add new messages to shared media index even if !loadedAtBottom().
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
e023092744
Use RectPart(s) instead of ImageRoundCorner(s).
2017-12-18 21:54:11 +04:00
John Preston
92333e982c
Move message components to history_item_components.
...
Also fix channel signatures rendering.
2017-12-18 19:52:36 +04:00
John Preston
712b3f481c
Move online phrase code from app module.
...
Also fix possible assertion violation in online change timeout.
2017-12-17 12:13:26 +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
8b69e6ab99
Rename some methods in DocumentData.
...
Also fix voice message mark as read when autoplaying after previous.
Also show play icon and don't show playlist for audio files that do
not have shared music files attributes but have audio file mime type.
2017-12-10 14:28:04 +04:00
John Preston
9bbcbd4bb3
Remove all legacy media overview code.
2017-12-08 22:34:26 +04:00
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
John Preston
08167a6a91
Removed #include "stdafx.h" from all files.
...
Currently the build without implicitly included precompiled header
is not supported anyway (because Qt MOC source files do not include
stdafx.h, they include plain headers).
So when we decide to support building without implicitly included
precompiled headers we'll have to fix all the headers anyway.
2017-03-04 12:27:52 +03:00
John Preston
6f0cf30b12
Some platform-dependent modules refactoring.
...
Now each platform-dependent module declares its interface in
platform/platform_module.h file and after that includes platform-
specific headers like platform/win/module_win.h with implementation.
Also removed the legacy WinRT platform-dependent implementations.
2017-02-28 13:51:00 +03:00
John Preston
3f8e822621
Fixing crash in logout from passcode.
...
If the MTP::Instance is not started yet (we forgot our passcode),
the logout attempt was attempting to use mtproto from Intro::Widget
constructor before it was created. Now we create it before logout.
2017-02-27 21:25:42 +03:00
John Preston
dd933cf61c
MTP global state moved to MTP::Instance class.
...
Now there will be ability to start multiple mtproto instances.
2017-02-25 19:48:21 +03:00
John Preston
c3b3819d9f
Moved AppClass to messenger.cpp:Messenger.
2017-02-25 19:48:20 +03:00
John Preston
63c61637f8
Moved MTP::authedId() to AuthSession::Current().
2017-02-25 19:48:19 +03:00
John Preston
ffc557a0f9
Using standard library instead of std_ namespace.
...
Currently tested only in VS2015.
2017-02-21 16:45:56 +03:00
John Preston
9757489645
Moved to the latest emoji set.
...
Also the old MetaEmoji project was converted to codegen_emoji.
All emoji now use full string identifiers for local storage.
2017-02-15 21:27:31 +03:00
John Preston
b842761ea3
Closed beta 1000006001: Built in theme and color palette editor.
2017-02-07 17:56:33 +03:00
John Preston
6ae68b337d
Audio capture moved to a separate module.
2017-01-25 00:25:21 +03:00
John Preston
041e366df7
Alpha 1.0.1: resize chats list with mouse press-and-drag.
...
Also fixed drag-n-drop images from Firefox in Windows.
Also some additional colors added to themes palette:
HistoryToDown button now has separate colors.
Windows title bar and buttons have separate active/inactive colors.
2017-01-16 16:27:11 +03:00
John Preston
7fb1463c43
Version 1.0 stable: bump copyright date to 2017.
2017-01-11 23:02:13 +04:00
John Preston
ef927c8465
Theme preview ready.
...
Also style::color is now copyable, constructed only inside a palette.
Also macOS setup new background ready.
2016-12-30 17:53:05 +04:00
John Preston
eb4d2a38b6
Closed beta 10020003: All colors moved to palette, some bug fixes.
2016-12-30 17:53:02 +04:00
John Preston
177078b0af
Closed beta 10020002: Use default color theme link in Settings.
2016-12-30 17:53:00 +04:00
John Preston
2436ad74bd
Boxes redesigned. Common groups moved to Shared Media.
...
Also transparent images sending fixed.
2016-12-30 17:52:56 +04:00
John Preston
85b434bee4
Scheme updated. Pinned dialogs support added.
2016-12-30 17:52:53 +04:00
John Preston
4692fdeb5f
Closed beta 10019013: Groups in common now are opened in a section.
2016-12-30 17:52:50 +04:00