John Preston
bfa5accc29
Use shared player for each document.
2019-12-11 13:15:48 +03:00
John Preston
1243123579
Allow multiple players of the same file.
2019-12-10 17:06:22 +03:00
John Preston
b73f1be856
Make some video player code reusable.
2019-12-10 15:13:12 +03:00
John Preston
ee94e78533
All mtproto downloads using DownloadMtprotoTask.
2019-12-05 11:32:33 +03:00
John Preston
f522cc9444
Load streaming parts using Storage::DownloadManager.
2019-12-04 10:42:55 +03:00
John Preston
3ae2986c25
Allow variable count of download sessions.
2019-12-04 09:51:21 +03:00
John Preston
fb86bb579b
Correctly track DC index in Downloader-s.
2019-12-03 15:45:35 +03:00
John Preston
12f5ccaaa5
Use vector queues in mtproto file downloader.
2019-12-03 10:25:27 +03:00
John Preston
e943264823
Pass MTP::Instance to MTP::Sender.
2019-11-29 15:36:05 +03:00
Nicholas Guriev
793862bee6
Fix -Wredundant-move and -Wdeprecated-copy warnings ( #6663 )
...
* Do not move result at end of function
This makes GCC 9.1.2 happy with the active -Wredundant-move warning.
Indeed, such moving of local variables or local arguments before
returning is unnecessary and prevents the compiler from copy elision
optimization.
2019-11-12 18:15:34 +03:00
John Preston
bd0aee2f77
Use userpic if no photo thumbnail is loaded.
2019-11-05 13:23:56 +03:00
John Preston
246c45ce0e
Use lib_ui from submodule.
2019-10-19 12:27:28 +04:00
John Preston
17baac710e
Fix save dialog in macOS for streamed videos.
2019-10-07 19:57:26 +03:00
John Preston
60b39c8f7e
Fix inline result previews.
2019-10-07 12:19:04 +03:00
John Preston
ecfe1dacb2
Version 1.8.12: Fix build for Xcode.
2019-10-02 12:54:29 +03:00
Jiachen YANG
9d850b71e7
be compatible with range-v3 0.9.x/1.0 branch
...
This made 2 changes to the current code base to be compatible with higher versions of range-v3 library.
1. ranges::iterator_range was renamed to subrange, see https://github.com/ericniebler/range-v3/issues/766
2. PercentCounterItem need an operator== for ranges::sort for some reason
2019-10-02 11:52:55 +03:00
John Preston
849deb57e2
Move many widget classes to lib_ui.
2019-10-01 23:59:46 +03:00
John Preston
c057f28425
Move standard buttons to lib_ui.
2019-10-01 23:59:46 +03:00
John Preston
c5845f17ae
Remove twidget header.
2019-10-01 23:59:46 +03:00
John Preston
e2f54eb3e9
Move some style code to lib_ui.
2019-10-01 23:59:46 +03:00
John Preston
0c713a930a
Remove app.h / facades.h from precompiled header.
2019-10-01 23:59:46 +03:00
John Preston
90b955534a
Beta version 1.8.6: Improve theme preview.
2019-09-09 16:13:16 +03:00
John Preston
ee5423762a
Generate previews for cloud theme links.
2019-09-09 14:56:05 +03:00
John Preston
37a4c79c81
Open theme preview after loading.
2019-09-06 19:31:07 +03:00
John Preston
9c86f0e0a5
Save themes, apply and close editor on save.
2019-09-06 19:31:07 +03:00
John Preston
79106e0c01
Correctly show custom themes in list.
2019-09-06 19:31:07 +03:00
John Preston
dd74f57a66
Display full themes list in Settings.
2019-09-06 19:31:07 +03:00
John Preston
6343221d7b
Remove many includes from stdafx.pch.
2019-09-06 19:31:07 +03:00
John Preston
4929de2bfb
Apply cloud themes.
2019-09-06 19:31:06 +03:00
John Preston
4bad642190
Remove some more Auth() calls.
2019-08-09 11:50:49 +01:00
John Preston
850940116d
Move HistoryMedia to HistoryView namespace.
2019-08-09 11:50:49 +01:00
John Preston
708b1d7ad4
Add 'Loop animated stickers' setting.
2019-08-09 11:50:49 +01:00
John Preston
bacaf805b5
Pass SessionNavigation to some boxes.
2019-07-25 20:55:11 +02:00
John Preston
ff44094ded
Rename AuthSession to Main::Session.
2019-07-24 13:45:24 +02:00
John Preston
873b77cf40
Use UserData::isBot where applicable.
2019-07-24 08:02:20 +02:00
John Preston
c5df4db621
Fix possible race conditions in msgid().
2019-07-15 16:00:30 +02:00
John Preston
567bf60644
Use getters in MTP classes.
2019-07-05 16:23:07 +02:00
John Preston
556f36ba7e
Fix transparent animated GIFs.
2019-07-04 13:12:58 +02:00
John Preston
09c9f4ef9a
Implement Lottie::MultiPlayer.
2019-07-01 17:57:38 +02:00
John Preston
cbffeca8d5
Extract some Lottie::Animation code to Lottie::Player.
2019-07-01 17:57:37 +02:00
John Preston
56e137b20f
Move some common code to lib_ffmpeg.
2019-07-01 17:57:35 +02:00
John Preston
35bc2cc2a5
Prepare lottie animations caching.
2019-07-01 17:57:34 +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
John Preston
d3ca6b96a1
Use tr:: instead of __generic.
2019-06-21 11:06:50 +02:00
John Preston
a7c8feaecb
Use tr:: instead of langFactory and __rich.
2019-06-21 11:06:50 +02:00
John Preston
8ed433cc01
Use tr:: instead of langFactory in input fields.
2019-06-21 11:06:49 +02:00
John Preston
ca7c50fbcd
Remove pseudo-HTML from langpacks and Ui::Text::String.
2019-06-21 11:06:46 +02:00
John Preston
2162aa8df0
Rename Text to Ui::Text::String.
2019-06-21 11:06:46 +02:00
John Preston
fa3bf11a7f
Fix possible crash in corrupt media files.
2019-06-17 14:23:50 +02:00
John Preston
0868a9f7b9
Use Controller::account in MainWindow.
2019-06-06 14:59:00 +03:00
John Preston
dd68c7e90d
Use Window::Controller to manage MainWindow.
2019-06-06 14:20:21 +03:00
John Preston
a547f80ae9
Rename Window::Controller to Window::SessionController.
2019-06-06 13:21:40 +03:00
John Preston
263bbf1788
Move _authSession to Main::Account.
2019-06-06 12:37:12 +03:00
John Preston
e53f4a5450
Close streamed video on Escape.
2019-06-05 17:54:12 +03:00
John Preston
c7b1683f6e
Beta version 1.7.4: Use loadedInMediaCache for songs.
2019-06-04 18:59:26 +03:00
John Preston
04e3b250e7
Keep track of fully cached media files.
2019-06-04 14:30:44 +03:00
John Preston
2255eb2c68
Show loaded till in playback slider.
2019-06-04 14:30:44 +03:00
John Preston
0ce5405eef
Show download progress in playback controls.
2019-06-04 14:30:43 +03:00
John Preston
021ada5e9e
Hide save button in media viewer when downloading.
2019-06-04 14:30:43 +03:00
John Preston
b2895a39ed
Register streaming loaders in Storage::Downloader.
2019-06-04 14:30:43 +03:00
John Preston
cca906d383
Use ready parts from loader in streaming.
2019-06-04 14:30:43 +03:00
John Preston
8704f6efd0
Use simple loader for non-streamable file types.
2019-06-04 14:30:43 +03:00
John Preston
e1114530ab
Working code for streaming downloader.
2019-06-04 14:30:43 +03:00
John Preston
27018d94ee
Load file parts even when not streaming.
2019-06-04 14:30:43 +03:00
John Preston
1ee4dac4f3
Parse cache entries async.
2019-06-04 14:30:43 +03:00
John Preston
fe15ee742d
Track in Reader if it is used in streaming.
2019-06-04 14:30:43 +03:00
John Preston
ebf2a678b1
Use a special FileLoader for streamed documents.
2019-06-04 14:30:43 +03:00
John Preston
8c0cd9b9e9
Prepare Media::Streaming::Reader to be shared.
2019-06-04 14:30:43 +03:00
John Preston
9c613fe2f7
Move system versions to platform/platform_info.
2019-06-04 14:23:14 +03:00
John Preston
caf1af8963
Version 1.7.3: Fix possible stack overflow.
2019-06-01 12:30:45 +03:00
John Preston
619aca04f9
Don't show report spam over the chat history.
2019-05-30 21:53:13 +03:00
John Preston
ff0ff1d99c
Fix stickers lagging on macOS.
2019-05-28 13:39:38 +02:00
23rd
b4df7b4efd
Replaced observable updatedNotifier() with rpl.
2019-05-27 15:35:03 +02:00
23rd
a80f7c53ea
Replaced Apple icons for touchbar with custom icons in audio player.
2019-05-27 15:35:01 +02:00
23rd
ba1691bf7e
Added custom close icon to touchbar
...
- Slightly refactored.
2019-05-27 15:35:00 +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
3577e71782
Validate mime type of animated stickers.
2019-05-27 15:09:07 +02:00
John Preston
cfff744cb1
Parse and render lottie in the background.
2019-05-27 14:11:26 +02:00
John Preston
f073963582
Preview lottie animations in media viewer.
2019-05-27 14:11:26 +02:00
John Preston
22c2054dcf
First attempt to use QtLottie.
2019-05-27 14:11:26 +02:00
John Preston
08bddc5579
Move messages data to AuthSession.
2019-05-01 16:11:42 +04:00
John Preston
08cd46cd4c
Fix crash in streaming caching.
2019-04-12 18:49:37 +04:00
23rd
fb847135b5
Added ability to edit GIFs.
...
- Added to Media::Clip::MakeReader new constructor to create
animated preview with remoteContent.
2019-04-09 17:17:31 +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
321e4ffe9c
Don't auto-resume video when seeking.
2019-04-08 14:34:31 +04:00
John Preston
2bdce7dce6
Fix window activations handling without event loop nesting.
...
This was causing an assertion violation in Ui::PostponeCall.
- Add a generic Core::QtSignalProducer to convert Qt signals to rpl::producer.
- Track event loop nesting inside QtSignalProducer.
- Use QtSignalProducer for QWindow::activeChanged tracking.
2019-04-05 14:13:54 +04:00
John Preston
5f8ede194b
Fix rendering of large images on macOS.
2019-04-03 16:42:08 +04:00
John Preston
db631acf80
Remove old animations code.
2019-04-02 14:33:54 +04:00
John Preston
99bb09374d
Use new animations engine everywhere.
2019-04-02 14:33:53 +04:00
John Preston
a6e96f9a28
Use new animations engine in all Basic-s.
2019-04-02 14:33:53 +04:00
John Preston
cd3c1c6dc0
Use new animations engine for typings.
2019-04-02 14:33:53 +04:00
John Preston
84e9e37353
Closed alpha version 1.6.3.1: Fix build for Xcode.
2019-03-29 14:24:08 +04:00
John Preston
95023ca770
Use StorageFileLocation in streaming loader.
2019-03-29 14:24:07 +04:00
John Preston
aa8f62da9d
Support new ('modern') API file locations.
2019-03-29 14:24:07 +04:00
John Preston
bf182697b9
Use streaming player speed in 2x playback.
2019-03-26 16:51:40 +04:00
John Preston
e87084715d
Fix song / voice 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
2701e63406
Allow revoking only sent messages.
2019-03-24 12:12:43 +04:00
John Preston
a34e998c42
Handle fwd_from without a link to the account.
2019-03-24 12:12:42 +04:00
John Preston
d1cf43f9a4
Fix streaming receivedTill reporting.
...
It was incorrect in case audio and video had different durations.
2019-03-24 12:12:40 +04:00
John Preston
31dbe2278e
Fix possible crash in local file streaming.
...
Cache file size instead of requesting it from file system each time.
2019-03-20 14:21:50 +04:00
John Preston
9ed064b7fc
Fix crash in streaming parts loading.
2019-03-20 13:41:13 +04:00
John Preston
c0959ceaeb
Start video when moving to it in media viewer.
...
Fixes #5796 .
2019-03-18 11:44:49 +04:00
John Preston
6c382c647c
Fix caching of first slice in header.
2019-03-18 11:00:11 +04:00
John Preston
8f9bed0443
Fix document caption in media viewer.
...
Regression was introduced in 5cae57601a
.
Fixes #5799 , fixes #5802 , fixes #5804 .
2019-03-17 23:00:09 +04:00
John Preston
bc2b0f8392
Add button to download video files.
...
Fixes #5781 .
2019-03-15 14:15:04 +04:00
John Preston
f2a7cf5c64
Improve shared videos design.
2019-03-15 12:09:48 +04:00
John Preston
5cae57601a
Allow video download from media viewer.
2019-03-14 16:03:02 +04:00
John Preston
2b7fb7a9a6
Pause music only when video playback starts.
2019-03-14 14:45:08 +04:00
John Preston
feb238c5d9
Fix crash if asked to read more than 64MB at once.
2019-03-14 14:14:24 +04:00
John Preston
bfb6ecbac7
Fail streaming on error in any stream.
2019-03-14 12:47:18 +04:00
John Preston
2152fe6a79
Beta version 1.5.17: Improve large file streaming.
...
Allow header for streaming up to 8 MB.
2019-03-13 20:56:04 +04:00
John Preston
b65a24df96
Allow streaming videos with unknown duration.
...
When you stream image/gif as a soundless video the total duration is
unknown, so we accumulate packet->pts + packet->duration as duration.
2019-03-13 18:58:50 +04:00
John Preston
c655bf852f
Fix crash in video player seek.
2019-03-13 16:28:07 +04:00
John Preston
be495c17bc
Fix seek to video end.
2019-03-13 16:21:07 +04:00
John Preston
9785ff4be6
Add more checks in streaming.
2019-03-13 15:11:54 +04:00
John Preston
5ec37e9112
Use separate click handler for OpenWith.
2019-03-13 13:35:47 +04:00
John Preston
e79ddf2459
Beta version 1.5.16: Fix audio stucking.
2019-03-12 18:57:48 +04:00
John Preston
5efe47cfb6
Beta version 1.5.16: Remove streaming logs.
2019-03-12 18:56:35 +04:00
John Preston
ef682e7023
Fix photos in overview with disabled autodownload.
...
Fixes #5599 , fixes #5747 .
2019-03-12 12:55:26 +04:00
John Preston
846499a4fb
Fix volume saving to settings.
2019-03-12 09:09:53 +04:00
John Preston
c063d94aa5
Remove DocumentData::actionOnLoad. Fix GIF open.
2019-03-11 19:07:35 +04:00
John Preston
261720c941
Fix radial animations on macOS.
...
QOpenGLWidget doesn't draw antialiased ellipses and arcs,
so we use a software rasterizer and then draw the resulting image.
2019-03-11 13:51:15 +04:00
John Preston
a886c598c1
Fix non-streamable videos layout.
2019-03-11 12:08:20 +04:00
John Preston
2ce4abfdfe
Fix crash in media caching.
2019-03-11 12:08:20 +04:00
John Preston
18c42954ae
Fix sparse frame painting on macOS.
2019-03-11 12:08:20 +04:00
John Preston
b57b4fa0f8
Fix reading first slice for good header cache.
2019-03-11 12:08:20 +04:00
John Preston
3706be77ea
Fix macOS media viewer controls hiding.
2019-03-11 12:08:19 +04:00
John Preston
f481f1e142
Make videos larger, fix playback animation.
2019-03-11 12:08:19 +04:00
John Preston
84b09795f3
Store first slice in the header cache key.
2019-03-11 12:08:19 +04:00
John Preston
a56a12a1ef
Optimized video frame pushing.
2019-03-11 12:08:18 +04:00
John Preston
5c4b459f57
Use new animations in video viewer.
2019-03-11 12:08:18 +04:00
John Preston
92332b45ea
Don't reset zoom on video seek.
2019-03-11 12:08:17 +04:00
John Preston
b742c95516
Support streamed video rotation.
2019-03-11 12:08:16 +04:00
John Preston
a59c3da3d0
Cache small files in one value.
2019-03-11 12:08:16 +04:00
John Preston
8399f4189f
Don't show receivedTill for local loaders.
2019-03-11 12:08:16 +04:00
John Preston
67b9fe846b
Improve video frame position checks.
2019-03-11 12:08:16 +04:00
John Preston
0f4ccce0e1
Update ffmpeg.
2019-03-11 12:08:15 +04:00
John Preston
01d763eed1
Use DocumentData::getDuration for all types.
2019-03-11 12:08:15 +04:00
John Preston
41c60419f1
Enable voice messages streaming.
2019-03-11 12:08:15 +04:00
John Preston
518d1da736
Fail streaming if no codec for a stream.
2019-03-11 12:08:14 +04:00
John Preston
22356eb01c
Fix initial video duration display.
2019-03-11 12:08:14 +04:00
John Preston
b5eb88a32f
Closed alpha version 1.5.15.2.
2019-03-11 12:08:13 +04:00
John Preston
6887993f92
Report streaming failed.
2019-03-11 12:08:13 +04:00
John Preston
71b733a018
Display receivedTill in video player controls.
2019-03-11 12:08:13 +04:00
John Preston
e2eb9cea00
Apply sample_aspect_ratio in streaming.
2019-03-11 12:08:12 +04:00
John Preston
99e96a5b13
Allow looping video without audio in streaming.
2019-03-11 12:08:12 +04:00
John Preston
c27456277e
Support streaming of local files.
2019-03-11 12:08:11 +04:00