Commit Graph

417 Commits

Author SHA1 Message Date
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
John Preston dafa286b18 Show option to download on streaming error. 2019-03-11 12:08:11 +04:00
John Preston f0963a332a Fix crash on failed streaming. 2019-03-11 12:08:10 +04:00
John Preston 8171828c2a Fix build on GCC. 2019-03-11 12:08:09 +04:00
John Preston a8aa66d191 Check frame format before sws_getCachedContext. 2019-03-11 12:08:09 +04:00
John Preston c574119718 Implement file reference update in streaming. 2019-03-11 12:08:08 +04:00
John Preston 648cd44ddd Display correct video / music state. 2019-03-11 12:08:08 +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 44df10d6cb Improve working with cache in streaming. 2019-03-11 11:49:54 +04:00
John Preston b6a757842a Pause loading if loaded for 1 minute. 2019-03-11 11:49:54 +04:00