Commit Graph

77 Commits

Author SHA1 Message Date
John Preston 0c713a930a Remove app.h / facades.h from precompiled header. 2019-10-01 23:59:46 +03:00
John Preston ff44094ded Rename AuthSession to Main::Session. 2019-07-24 13:45:24 +02:00
John Preston 4917ca7b32 Remove all legacy global namespace langs. 2019-06-21 11:06:52 +02:00
John Preston 87fc066e67 Use tr:: instead of lang(). 2019-06-21 11:06:51 +02:00
23rd b4df7b4efd Replaced observable updatedNotifier() with rpl. 2019-05-27 15:35:03 +02:00
23rd 9059b2e617 Fixes for Audio Player in touchbar.
- Removed unused Platform::SetTouchBar.
 - Added rpl::event_stream in Media Player Instance for handle closing player.
 - Fixed hiding of touchbar when last track is ended.
 - Fixed display of time when last track is ended.
 - Slightly refactored.
2019-05-27 15:34:58 +02:00
23rd 58604406f8 Added initial implementation touchbar. 2019-05-27 15:34:54 +02:00
John Preston 08bddc5579 Move messages data to AuthSession. 2019-05-01 16:11:42 +04:00
John Preston b5be6df5e2 Copy text with expanded links only to external.
Paste valid custom links in message field if copied from messages.
2019-04-08 19:10:06 +04:00
John Preston 99bb09374d Use new animations engine everywhere. 2019-04-02 14:33:53 +04:00
John Preston bf182697b9 Use streaming player speed in 2x playback. 2019-03-26 16:51:40 +04:00
John Preston 3bd1bbc77a Use Streaming::Player in video messages playback. 2019-03-26 16:51:39 +04:00
John Preston c063d94aa5 Remove DocumentData::actionOnLoad. Fix GIF open. 2019-03-11 19:07:35 +04:00
John Preston 71b733a018 Display receivedTill in video player controls. 2019-03-11 12:08:13 +04:00
John Preston 8171828c2a Fix build on GCC. 2019-03-11 12:08:09 +04:00
John Preston fde8dd9607 Play streaming audio in player. 2019-03-11 12:08:08 +04:00
John Preston f1e0cd6c1d Play streaming video in mediaview. 2019-03-11 11:52:11 +04:00
John Preston d37b65e624 If stuck wait for three seconds of packets. 2019-03-11 11:49:54 +04:00
John Preston 93c548c013 Support streaming speed changing. 2019-03-11 11:49:53 +04:00
John Preston fe618bd652 Use crl::time/now instead of TimeMs/getms. 2019-02-19 11:06:33 +04:00
John Preston 032694ad9e Move files to media/audio and media/clip. 2019-02-13 15:41:33 +03:00
John Preston 3bd0efa91e Use 1.7x instead of 2x in voice messages. 2018-12-03 19:33:34 +04:00
John Preston 2d05281ba9 Add configuration for OpenAL effects usage. 2018-11-09 16:28:15 +04:00
John Preston 346cb4e203 Fix some bugs in double playback speed.
- Apply double speed for all voice tracks, not only for the current.
- Use dedicated atomic in Mixer for the voice speed (fix race).
- Store the playback speed in user settings, not in global settings.
- Use float64 for setting (just consistency, no float-s right now).
2018-11-08 17:06:22 +04:00
Magnus Groß de8518a112 Implement double playback speed
This adds double playback speed for both voice messages and round video
messages.
The 2x playback speed setting is global and is saved in local storage.

Fixes #4907
2018-11-08 17:05:34 +04: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 87d6081408 Version 1.2.16: Fix build in Xcode 9.3. 2018-04-07 12:47:08 +04:00
John Preston 8bacc74d8b Request dialog list entries when needed.
Also save the original server-side int32 date in HistoryItems.
2018-02-08 12:20:54 +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 ea7441ae77 Use single LEGAL file with license and copyright. 2018-01-03 13:23:14 +03: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 4ef3de5287 Always specify seek position in TimeMs.
This way it won't rely on the sample rate of the audio file.

Fixes #4139.
2017-12-10 12:52:38 +04:00
John Preston 9bbcbd4bb3 Remove all legacy media overview code. 2017-12-08 22:34:26 +04:00
John Preston aec496d520 Remove RTL Override symbols from filenames. 2017-11-16 07:59:09 +04:00
John Preston d1687ab963 Improve info wrapping in section / layer.
Also move layerwidget to window/layer_widget.
Also replace ui/effects/widget_fade_wrap with ui/wrap/fade_wrap.
2017-11-16 07:59:05 +04:00
John Preston ffc20e4492 Divide structs into several data/ modules. 2017-11-16 07:59:04 +04:00
John Preston c302219f9e Use rpl in some widgets and effects. 2017-11-16 07:59:02 +04: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 110e7c8074 Finalize rename / move. 2017-06-29 11:39:38 +03:00
John Preston 66662e02a6 Fix crash in video player seeking.
Regression was introduced in 87ff770020.

Seek handler may destroy controller so first the playback is updated.
2017-05-31 11:58:43 +03:00
John Preston ee6d80673a Snap floating player to column and corner. 2017-05-24 16:25:17 +03:00
John Preston b7550f63c9 Add a floating player for round video messages. 2017-05-24 16:25:15 +03:00
John Preston 9332032839 Click on media player goes to voice/video message. 2017-05-24 16:25:12 +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 87ff770020 Make Media::Clip::Playback independent of slider.
Now animation of the playback progress is processed inside the
Media::Clip::Playback and the sliders just hold plain float64 value.
2017-05-24 16:25:06 +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 e8a3535c74 Support audio documents playback inside app.
Also add some more decoders in ffmpeg configuration (wav).
Also stop audio device restart on PKEY_AudioEndpoint changes.
Also deduce channel layout from channel count in ffmpeg loaders.
2017-04-30 14:34:23 +03:00