Commit Graph

444 Commits

Author SHA1 Message Date
John Preston 2e374e68c5 Fix working with layers.
Regression was introduced in df64c97.

New base::flags work correctly only if all mutually exclusive flag
values use mutually exclusive bits (a & b == 0 for exclusive (a, b)).

Closes #3856.
2017-09-03 22:49:33 +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 5a20014b1a Highlight all mentions when marking them read. 2017-08-30 19:15:53 +03:00
John Preston 20efa47126 Fix layout for the log entries of caption edits. 2017-08-30 19:15:52 +03:00
John Preston 5a1d52f82e Fix unread mentions navigation issues.
When the unread bar was destroyed we first jumped to the bottom
of the history by updateHistoryGeometry() and only after that
animated scroll to the desired message started. The last messages
were always painted (and marked as read) in that case.
2017-08-30 19:15:51 +03:00
John Preston 4c604b34c1 Allow service messages to be unread mentions. 2017-08-30 19:15:50 +03:00
John Preston 5964261db5 Allow to view sticker set from admin event log. 2017-08-30 19:15: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 e13ed9b909 Remove main()->peerUpdated and some other signals. 2017-08-30 19:15:36 +03:00
John Preston 7df63db9b3 Hide "Ban Users" admin rights changes in channels. 2017-08-30 19:15:32 +03:00
John Preston f7359093b4 Replace ContactsBox with PeerListBox in two cases.
- View contacts list in PeerListBox.
- Add participants when creating group / channel in PeerListBox.
2017-08-30 19:15:27 +03:00
John Preston 012d59ab42 Use nullptr instead of std::unique_ptr<Type>(). 2017-08-30 19:15:25 +03:00
John Preston 71e0e6ac4d Mark history as read at the bottom in any case. 2017-08-30 19:15:22 +03:00
John Preston bca444b92e Add base::optional as a wrapper of base::variant. 2017-08-30 19:15:21 +03:00
John Preston e209737b1a Display and follow unread mentions in history. 2017-08-30 19:15:13 +03:00
John Preston dd9d604966 Fix incorrect scroll jumps.
If we invoke showHistory(h, msgId) several times we call
forgetScrollState() for this history being on the same scroll place.

To compute it again we need to call visibleAreaUpdated() even if
the real scroll position was not changed.
2017-08-25 14:39:29 +03:00
John Preston b08732cf28 Move MediaView from MainWindow to Messenger. 2017-08-25 14:39:27 +03:00
John Preston f04b25ea26 Allow setting group stickers set. 2017-08-25 14:39:19 +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 cb5b6d0cb8 Add megagroup stickerset to StickersListWidget. 2017-08-25 14:39:13 +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 b0cc61c621 API scheme updated to layer 71. 2017-08-25 12:58:12 +03:00
John Preston 8c60ac78aa Rename and split dialogswidget module.
Also remove some debug information for crash fix.
2017-08-01 21:15:03 +03:00
John Preston 91fda6b654 Add search from group member button to dialogs. 2017-08-01 21:15:02 +03:00
John Preston 6f27e310ae Send reply and forward when choosing bot command. 2017-08-01 21:14:45 +03:00
John Preston 2dec9c46a7 Add emoji autocomplete to history message field. 2017-07-26 15:55:02 +03:00
John Preston 24b3b2a658 Fix forwarded from for single message forward.
Closes #3699, closes #3701, closes #3700.
2017-07-26 09:07:05 +03:00
John Preston e1e286aa13 Allow to fast share not games to channels.
Fixes #3692.
2017-07-26 09:07:01 +03:00
John Preston 9bd89121e8 Replace self-destruct media service messages text.
Also support runtime components with align up to std::max_align_t.
2017-07-23 12:34:42 +03:00
John Preston cf02a4cc31 API scheme updated to layer 70. 2017-07-23 12:34:40 +03:00
John Preston fa70bf9e0c Fix text message edit admin event log entries.
Regression was introduced in a513b1c.

In case of text messages entry->_page minimal height is counted in
the whole message minimal height and should not be added.
2017-07-23 12:33:39 +03:00
John Preston f7a354bfd1 Display "edited" mark on channel signed messages. 2017-07-18 22:00:33 +03:00
John Preston a513b1c7b3 Fix media caption edit admin event log entries. 2017-07-18 21:59:53 +03:00
John Preston a5e0b19b79 Copy correct text for a forwarded reply message. 2017-07-18 19:48:10 +03:00
John Preston 7c6bb132ce Don't display reply preview if it doesn't fit. 2017-07-18 19:47:56 +03:00
John Preston ab62b1591f Fix duplicated entries in calls log box.
Notify about new call service messages only for unread messages.
2017-07-15 15:41:04 +03:00
John Preston 397e1dde78 Move reply bar to the top of the sticker.
That way a fast share button in channels isn't overlapping with it.
2017-07-15 15:05:46 +03:00
John Preston 101ec9a1c1 Remove duplicated Copy Link context menu items.
When right clicking on a real link don't add a message link copy.
Fixes #3662
2017-07-14 14:56:57 +03:00
John Preston a69304fd25 Fix crash in forwarding messages.
HistoryHider holds pointers to items, so it should watch for
the history items being removed and remove the pointers.
2017-07-13 17:57:25 +03:00
John Preston 9fd8b040b7 Fix crash in history switch.
Don't call anything heavy between changing _history and _list.
2017-07-13 17:42:28 +03:00
John Preston c79561e97f Add a couple of actions log phrases for channels. 2017-07-12 16:34:13 +03:00
John Preston 48bd693679 Allow to copy message links in public supergroups. 2017-07-11 20:21:24 +03:00
John Preston f32af6999b Add a fast share button in channels and bots. 2017-07-11 20:11:06 +03:00
John Preston ac99784bf7 Change chat for forwarded items by click on them.
Closes #3637
2017-07-11 13:23:15 +03:00
John Preston d94ef82327 Fix opening a forwarded GIF in MediaView on click.
Fixes #3645
2017-07-11 13:21:01 +03:00
John Preston 58a592ba47 Allow to see admin / banned rights for everyone.
Even if you can't edit admin / banned rights you can see them.
2017-07-10 15:29:55 +03:00
John Preston f7543e3261 Improve EditAdmin/RestrictedBox design. 2017-07-10 13:55:16 +03:00
John Preston 0402b4f5f4 Add X / V vector icon to checkbox Toggle view.
Also use them in the admin rights / restrictions boxes.
2017-07-09 18:06:27 +03:00
John Preston 21d2f6a44f Generalize Checkbox layout.
Now any Checkbox can have Check, Radio or Toggle layout.
Radiobutton is now a subclass of Checkbox with default Radio layout.
2017-07-07 14:16:37 +03:00
John Preston eaf91bba58 Parse bold / italic markdown entities. 2017-07-06 16:44:11 +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 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 0c43aabfec Allow to ban from actions log user context menu. 2017-07-05 21:11:31 +03:00
John Preston 1a7353fb43 Fix phrase in HistoryJoined for supergroups. 2017-07-05 16:23:52 +03:00
John Preston 4d3e7ac30c Fix applying a draft with a reply in it.
Fixes #3407
2017-07-05 16:20:34 +03:00
John Preston 7d342b9c6d Add search to channel / supergroup recent actions. 2017-07-05 16:11:08 +03:00
John Preston 6d3a6d20b5 Version 1.1.10: Fix build for Xcode and GCC. 2017-07-04 19:17:44 +03:00
John Preston 0ae661edf0 Add channel / supergroup admin event log filter. 2017-07-04 16:31:18 +03:00
John Preston 0d38106ed0 Fix Edit option display for supergroup creator.
Supergroup creator saw the Edit option for other users messages.
2017-07-03 13:13:32 +03:00
John Preston 305e15dd03 Fix service message date in admin event log. 2017-07-02 22:26:23 +03:00
John Preston 5fe1175602 Fix crash when message for forward is deleted.
The messages prepared for forwarding are not a map (MsgId -> item),
but just a map (random int -> item), so we need to loop over them.
2017-06-30 13:46:41 +03:00
John Preston bf57a1506f Fix assertion violation in the admin events log.
Add support for a log entry about group/channel photo being removed.
2017-06-30 13:35:35 +03:00
John Preston 4993ff1921 Finalize rename / move. 2017-06-30 09:21:45 +03:00
John Preston d1536d0572 Rename / move history and historywidget modules. 2017-06-30 09:21:45 +03:00
John Preston 836fe119d9 Improve display of admin event log entries.
Don't show the Forward, Delete and Go to message in MediaView.
Better handle round video floating player in admin event log.
2017-06-30 09:21:45 +03:00
John Preston 0b3644b334 Improve phrase on copying selected items as text.
This is a better implementation of #3346.
2017-06-30 09:21:45 +03:00
John Preston 545915e481 Fix name/fwd/reply/viabot info display for media. 2017-06-30 09:21:45 +03:00
John Preston 6f90dc2374 Fix empty admin event log display. 2017-06-30 09:21:45 +03:00
John Preston 91dcfff423 Add unpinned message admin log event action. 2017-06-30 09:21:45 +03:00
John Preston 2a51e2aa59 Workaround GCC bug and fix Linux build. 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 75fdd5315f Add some more colors for theming. 2017-06-30 09:21:44 +03:00
John Preston 8c04bed572 Display empty event log placeholder.
Also hide the filter button for now.
2017-06-30 09:21:43 +03:00
John Preston ae56c5266f Fix rich text entities in log entry original. 2017-06-30 09:21:43 +03:00
John Preston 0a9db8533b Save admin log state to memento and restore it. 2017-06-30 09:21:43 +03:00
John Preston 85e234938d Fix inline keyboard. Disable it in the event log.
Also disable game preview click handler in the event log.
2017-06-30 09:21:43 +03:00
John Preston 816ee794e8 Event log context menu + improved text selection. 2017-06-30 09:21:43 +03:00
John Preston 624f33c5e2 Allow to select and copy text in the events log.
Also better handle window resize in the events log.
2017-06-30 09:21:42 +03:00
John Preston 693c30d264 Handle mouse events in log entry message parts.
Also highlight mentions and hashtags in them.
2017-06-30 09:21:42 +03:00
John Preston cedf8a65e7 Better channel log entry layout inside messages.
Also move HistoryService class to a separate module.
2017-06-30 09:21:42 +03:00
John Preston 0a39e7e2b1 Support userpics and dates in channel log events. 2017-06-30 09:21:42 +03:00
John Preston 5c87b42135 Use plain HistoryItem in channel admin events log.
Instead of using a complex AdminLog::Item use just HistoryItem*.
2017-06-30 09:21:42 +03:00
John Preston e39b95175b Handle channel event log mouse events. 2017-06-30 09:21:42 +03:00
John Preston 507b7d7193 Add to each history item its own width value. 2017-06-30 09:21:41 +03:00
John Preston 839e59075d Display log entry original data in HistoryMessage. 2017-06-30 09:21:41 +03:00
John Preston 4962fdf5ae Add phrases and layout for all events in log. 2017-06-30 09:21:41 +03:00
John Preston fee8690ca6 Channel action log items display and layout. 2017-06-30 09:21:41 +03:00
John Preston 25a718c54b Start recent channel actions log section. 2017-06-30 09:21:41 +03:00
John Preston 6ba57e713e Use forwarded messages only for one selected chat.
Different chats now can have different forwarded "drafts".
2017-06-29 11:40:26 +03:00
John Preston 9de95cee23 Drop link preview if you can't send them.
Just drop the preview when message with a web page preview is
forwarded and we're restricted to send them in the megagroup.
2017-06-29 11:40:23 +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 85e6f55536 Support new plural keys format.
All the old plural phrases were changed to work with the new format.
2017-06-29 11:39:56 +03:00
John Preston 110e7c8074 Finalize rename / move. 2017-06-29 11:39:38 +03:00
John Preston 6869cc7d04 Fix non-square reply preview in selected messages.
After introducing video messages and sticker reply previews they may
be not a rounded rectangle but any transparent image. So instead of
painting a selected rounded rect over them we just colorize them with
an overlay color like it is done with the selected sticker images.
2017-06-29 11:39:32 +03:00
Viktor Oreshkin 3f3b9f3608 Show date from fwdHeader on tooltip
Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks>
2017-06-28 19:21:34 +03:00
John Preston 10e34aa996 Fix a crash in round videos with a message text. 2017-05-26 15:20:11 +03:00
John Preston e0978f86d1 Alpha 1.1.3: Fix some render in macOS. 2017-05-24 17:36:58 +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 b7550f63c9 Add a floating player for round video messages. 2017-05-24 16:25:15 +03:00
John Preston 6bde8cdce4 Remove legacy debug information. 2017-05-24 16:25:13 +03:00
John Preston 7873cb4373 Using media player for voice / video messages.
Media::Player::Widget displays the current voice / video message
if it is played and the current song otherwise.

It is created when a voice / video message starts and is destroyed
when all the voice / video messages in the playlist are finished.
2017-05-24 16:25:12 +03:00
John Preston 611a3e2f8a Handle voice playlist in Media::Player::Instance.
This allows video and voice messages to autoplay one after another.
2017-05-24 16:25:09 +03:00
John Preston b9119e5ef6 Play video messages as Type::Voice.
Use AudioMsgId instead of videoPlayId.
Any audio track now can be a child loader track of some video clip.
Use Type::Voice instead of Type::Video for round video messages.
Video messages play / pause / resume the same way as voice messages.
2017-05-24 16:25:09 +03:00
John Preston 5915f3f928 Display radial playback progress in round videos. 2017-05-24 16:25:07 +03:00
John Preston 8446fa5a4d Change round video playback duration to countdown. 2017-05-24 16:25:06 +03:00
John Preston efb59e8c3a Show GIF in Mediaview on click.
This way you can watch GIF on full screen and switch between them.
2017-05-24 16:25:05 +03:00
John Preston 2377873c45 Add items to overviews inside HistoryMedia.
This allows one history item to exist in several media overviews.
See voice message, which should be in VoiceFiles and RoundVoiceFiles.
2017-05-24 16:25:04 +03:00
John Preston 0339b1b54b Shrink dialogs column when enabling emoji sidebar.
Try to hold the ratio between the chat width and the dialogs list
width when the emoji sidebar is created by shrinking the left column.
2017-05-17 15:38:42 +03:00
John Preston b88a49d2f8 Show a tooltip about the emoji section toggling. 2017-05-17 12:40:03 +03:00
John Preston 0eb2d28d90 Show floating date only when scrolling up. 2017-05-16 16:41:47 +03:00
John Preston 0496a52cdd Alpha 1.0.38: Fix webpage layout.
Webpage layout is broken if title contains a newline.
Remove all newline characters from webpage / game / invoice title.
2017-05-13 17:31:00 +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 5fe75fbd5f Attempt to fix an assertion violation.
In some cases HistoryItem::attachToBlock was not calling
History::setHasPendingResizedItems (if it was not pending resize).

That could lead to addition of a whole block of items without
setting pending resize for the history and it violated the history
invariant of the _blocks y/height and their _items y/height.

Now each time we attachToBlock an item we also setPendingResize it.
2017-05-12 17:05:06 +03:00
John Preston d581e00299 Improve history items management.
Encapsulate HistoryBlock::y and HistoryBlock::height.
2017-05-12 16:53:08 +03:00
John Preston 2e816f2a67 Play notification sound using Media::Audio::Track. 2017-05-09 23:46:30 +03:00
John Preston 28c0e815b3 Add new calls to Calls log box in realtime.
Also improve button ripple effect in Calls log box.
2017-05-09 23:46:20 +03:00
John Preston c4f90983af Redesign calls service messages. 2017-05-09 23:46:19 +03:00
John Preston 06b081f509 Add calls log box.
PeerListBox can have many rows with the same PeerData.
PeerListBox::Row can have arbitrary action on the right side.
2017-05-09 23:46:18 +03:00
John Preston 60ac7572af Display name, status and emoji in Call Panel. 2017-05-09 23:46:17 +03:00
John Preston 413eafb240 Allow chat creator/admins to delete for everyone.
Chat creator and admins (if admins are enabled) now can delete
any message for everyone, not only outgoing ones.
2017-04-30 16:58:45 +03:00
John Preston a925822141 Generate and handle new video message links. 2017-04-30 16:43:19 +03:00
John Preston 07a274f927 Improve video message status text in a web page.
Show duration / progress text in the bottom left bubble corner.
2017-04-30 16:43:17 +03:00
John Preston eb240defa3 Display forwarded info in video messages. 2017-04-30 16:43:17 +03:00
John Preston 4659b664e7 Skip fwd_info for msgs from chat with yourself.
Server doesn't add fwd_info if a non-forwarded message is forwarded
from chat with yourself so don't add it locally as well.
2017-04-30 16:43:16 +03:00
John Preston 46690da488 Make round reply preview for video messages.
Also add a reply bar for video messages.
Also add a reply preview for stickers.
2017-04-25 13:47:52 +03:00
John Preston 8f719f8c06 Remove edit caption UI for not my messages.
Regression was introduced in 8eb7f1f1aa.
2017-04-21 13:59:03 +03:00
John Preston da0387a23e Fix forwarded message original id. Closes #3305. 2017-04-21 13:47:39 +03:00
John Preston 8e241e8b78 Improve Emoji-Stickers-GIFs panel.
Fix broken minimal panel size.
Remove HistoryWidget context menu from the panel.
2017-04-16 00:05:57 +03:00
John Preston 6226cf2809 Display video message playback progress time. 2017-04-15 23:30:28 +03:00
John Preston 7312114b75 Use full volume for video messages.
Set video volume to VideoVolume in MediaView and to 1 in HistoryGif.
2017-04-15 22:51:53 +03:00
John Preston 0ff299758a Use correct lang phrases for video messages. 2017-04-15 22:51:44 +03:00
John Preston 96dbb38aaa Improve mute and info display in video messages.
Display mute on top of the video and move info to the right side
for incoming messages (because of channel authors and views count).
2017-04-12 22:37:28 +03:00
John Preston 1b7777e3a0 Pause other GIFs when playing round video message. 2017-04-12 22:37:28 +03:00
John Preston 5480a63beb Support round video inline playback with sound. 2017-04-12 22:37:27 +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 8eb7f1f1aa Display round video messages using HistoryGif.
Use autodownload and autoplay options from GIFs.
Also improve EditCaptionBox code.
2017-04-12 22:37:26 +03:00
John Preston 330fc35800 Move some classes to separate modules.
MessageField, BotKeyboard, HistoryInner from historywidget.
2017-04-08 16:31:58 +03:00
John Preston 570cd9bdfa Move GIF pausing methods to Window::Controller. 2017-04-08 16:31:57 +03:00
John Preston 5444b8166c Finalize rename / move of files. 2017-04-07 18:13:18 +03:00
John Preston c94a88e154 Rename / move a bunch of files.
Next commit fixes the build.
2017-04-07 18:13:16 +03:00
John Preston ffc9585196 Add hierarchy of GIF pausing inside a window.
GIFs get paused if some other layer is displayed above.
Media preview > Box or layer > Saved GIFs panel > Inline bot results.
If any of those is displayed, GIFs inside message history pause too.
2017-04-03 19:46:12 +03:00
John Preston 5bb68cfd8f Support reading me_url_prefix from config.
The default value 'https://t.me' can be overriden from server config.
2017-03-30 12:49:16 +03:00
John Preston 47c5d56c7b Use QLocale for amount + currency formatting. 2017-03-30 12:49:15 +03:00
John Preston fde769e0b9 Don't use WebDocument size field.
WebDocument size field is not a reliable information,
it can be > 0 and != upload.WebFile size field, so just ignore it
and load all WebDocument files as files with unknown size.
2017-03-30 12:49:15 +03:00
John Preston 23b39923ad Closed beta 1000018002: more phrases for payments.
Also replacing the Buy keyboard button with Receipt if the invoice
was payed already (like in mobile apps). This required to move the
inline markup apply before the media apply in message editing.
2017-03-30 12:49:15 +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 12ca6f3819 Closed beta 1000018001: calls and payments dummies. 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 7b5985445c Payment service messages supported. 2017-03-30 12:49:15 +03:00
John Preston 2019c24e08 Pay button and messageMediaInvoice supported.
New button type keyboardButtonBuy just shows a box with information.
WebDocument photo type is not supported yet, 'photo' is ignored.
Also HistoryMediaPtr is now implemented as a std::unique_ptr wrapper.
2017-03-30 12:49:15 +03:00
John Preston 0cc7cdd212 Added phrases for phone calls service messages.
Also refactored service message text parsing from an action object.
2017-03-30 12:49:15 +03:00
John Preston 743743ca10 Fix WebPage reply preview.
Sometimes HistoryWebPage::hasReplyPreview() was returning true while
the HistoryWebPage::replyPreview() method was not offering anything.
2017-03-21 20:59:35 +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 2e17b480a5 Fix crash in HistoryVideo::draw. 2017-03-12 11:52:28 +03:00
John Preston bc254228c9 Alpha 1.0.21: Use custom refcount for MTP types.
It seems that heavy using std::shared_ptr and std::make_shared
like it was before completely kills the compilation time.

Also HistoryItem::_create now uses perfect forwarding.
2017-03-11 20:03:36 +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 a1b53c660e Show video thumbnail in SendFileBox.
Read media information (image / song / video) in SendFileBox in the
same way it is read in FileLoadTask::process() and reuse it in
FileLoadTask if it was loaded already for the box.
2017-03-10 17:14:10 +03:00
John Preston 9ed8cbe2d1 Send mp4 and quicktime files as videos. 2017-03-10 17:12:51 +03:00
John Preston a441a9fca9 Fix service message highlighting. 2017-03-07 21:58:16 +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 e8b03248e1 Fix members list in supergroups when scrolling up.
When we load previous messages in chat history we add all authors
of the messages to lastAuthors in regular groups (so that we can
suggest them in mention autocomplete). The same logic was (blindly)
applied to supergroups lastParticipants list which is used not only
for the mention autocomplete but also in Profile members list. That
way we were showing there users who could've already left the group.
2017-02-26 21:02: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 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 8ffdfa7923 Fixed a render glitch when highlighting a message. #3023 2017-02-18 14:38:15 +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 25583fa813 Replace T_WIDGET macro with a template base class. 2017-02-11 14:24:37 +03:00
John Preston d3420b6a92 Fixed info display in media in non-group chats.
Version 1.0.8 introduced a regression in displaying forwarded,
reply and via @bot information in photo, video, GIFs and locations.
2017-02-11 10:55:43 +03:00
John Preston e922e5be39 Alpha 1.0.8: seek in voice messages (by waveform). 2017-02-11 01:37:37 +03:00
John Preston c39bf239ea Removed legacy HistoryItem::type() code. 2017-02-10 17:16:50 +03:00
John Preston 2becd307df Always display name in media messages in groups. 2017-02-09 17:34:19 +03:00
John Preston 8e3274cd8f Colors added in palette for selected messages.
User names in groups, text and links in messages and names
in files and shared contacts not can have different colors
in plain inbox / outbox messages and in selected messages.

Now we can use a separate color for selected parts in Text.
2017-02-09 16:46:14 +03:00
John Preston 60f45ab9b3 Improved location coords precision when converting them to string.
Also disabled some options for a packaged build.
2017-02-03 13:17:40 +03:00
John Preston 33d2ec0f54 Version 1.0.5: new audio code + reorder pinned chats. 2017-01-31 12:13:51 +03:00
John Preston 4964b8b488 Beta 1000002001: Recreate audio device when no output or device changes. 2017-01-25 08:45:09 +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 4424dbf64a Allow to resize chats list. One more mode added (narrow chats list). 2017-01-16 12:55:03 +03:00
John Preston 7fb1463c43 Version 1.0 stable: bump copyright date to 2017. 2017-01-11 23:02:13 +04:00
John Preston 2d185cf66e Some colors split for the palette. Theme preview applying improved.
Also attempting to fix travis build.
2017-01-11 12:16:44 +04:00
John Preston 143181095f Alpha 0.10.26: t.me links, latest OpenAL code used.
Also inline results should be displayed above the message field.
2017-01-07 15:55:05 +04:00
John Preston 9d66e88fc1 Alpha 0.10.24: fixed image alignment for ffmpeg, using ffmpeg 3.2. 2017-01-05 13:08:16 +04:00
John Preston d0a7e6be73 Delete messages box labels fix and confirm by Enter key.
Also context menu fixed in case of non-transparent windows.
Also pausing GIFs when the window is not active.
2017-01-02 21:11:49 +04:00
John Preston 3da020dffd Alpha 0.10.23: tiled background fixed for macOS. 2017-01-01 21:10:35 +04:00
John Preston eec5b78054 Delete for everyone checkbox added. Various bugfixes. 2017-01-01 15:47:00 +04:00
John Preston 218f991547 Alpha version 0.10.22: critical bug fixes. 2016-12-31 17:34:41 +04:00
John Preston bc0c355d2d Alpha version 0.10.21: pinned chats, groups in common, new design. 2016-12-30 22:23:17 +04:00
John Preston 1d8e76aa08 New empty user/chat photos: with filled background and initials. 2016-12-30 17:53:09 +04:00
John Preston 38e6a0ae7e Closed beta 10020005: Added several buttons animations. 2016-12-30 17:53:06 +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 0480e02b23 Closed beta 10020001: application icon changed. 2016-12-30 17:52:58 +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