Commit Graph

621 Commits

Author SHA1 Message Date
John Preston 1542311d89 Preload documents in media viewer. 2020-06-01 18:09:31 +04:00
John Preston fb322b5fc5 Use empty Storage::Cache::Key as nullopt. 2020-06-01 18:09:31 +04:00
John Preston 581a21dbd9 Use Media::Streaming in EditCaptionBox. 2020-06-01 18:09:31 +04:00
John Preston 3d431a27cb Improve inline thumbnail usage in PiP player. 2020-06-01 18:09:31 +04:00
John Preston 956c3af0ae Start DocumentData::thumbnail move to DocumentMedia. 2020-06-01 18:09:30 +04:00
John Preston 1e9c79ca85 Move automaticLoad() to DocumentMedia. 2020-06-01 18:09:30 +04:00
John Preston 40f12a2584 Keep document byte data only in DocumentMedia. 2020-06-01 18:09:30 +04:00
John Preston bf616036b3 Check loaded status through DocumentMedia if possible. 2020-06-01 18:09:30 +04:00
John Preston 33f4946242 Start using document bytes from DocumentMedia. 2020-06-01 18:09:30 +04:00
John Preston 70c79eb6bd Move sticker image to DocumentMedia. 2020-06-01 18:09:30 +04:00
John Preston bdd3c51ab8 Move inline thumbnail image to DocumentMedia. 2020-06-01 18:09:30 +04:00
John Preston 7db53599e8 Use Data::DocumentMedia to store good thumbnails. 2020-06-01 18:09:29 +04:00
Ilya Fedin fa4236e9ea Add support for DESKTOP_APP_USE_PACKAGED on macOS 2020-05-25 10:29:40 +04:00
Ilya Fedin ced2652deb OpenAL returns device names with UTF-8 2020-05-24 10:56:29 +04:00
John Preston 07e3671ca8 Allow monospace blocks to extend bubble width.
This partially fixes #2060 instead of additional settings from #7822.
2020-05-12 11:07:41 +04:00
Ilya Fedin 78c3c86fe6 Check only if at least one audio device is exist on startup
This makes https://github.com/telegramdesktop/tdesktop/issues/1548 don't affect on startup, but only when capture feature is used
2020-05-08 12:50:25 +04:00
John Preston 0251f58bf2 Use Semibold in names, use Bold in messages.
Fixes #7813, fixes #7823.
2020-05-08 12:12:47 +04:00
Nicholas Guriev 9828262a03 Update GSL to v3.0.1 and lib_base
* Use identical types for std::min.
2020-05-01 12:03:18 +04:00
John Preston d67dafaccb Fix check for 4K frame size in streaming. 2020-04-13 15:32:20 +04:00
John Preston f5aba5a907 Fix build with new lib_ui commits. 2020-04-13 15:26:09 +04:00
Ilya Fedin 5bb1c77199 Use OpenAL without direct channels 2020-04-13 15:15:29 +04:00
John Preston 735f7709b9 Fix sending videos larger than 720p. 2020-03-29 12:42:51 +04:00
John Preston f38e9763b6 Close media viewer when showing file in folder. 2020-03-27 20:36:06 +04:00
John Preston 01c79f917e Add limits on video frame size.
Any video that starts streaming is limited to 4K.
Any in-chat streaming is limited to full hd.
Any GIF panel animation is limited to 720p.
2020-03-27 20:36:05 +04:00
Ilya Fedin afc902a5cb Don't set device explicitly when capturing
Also update openal to 1.20.1 since it has pulseaudio.allow-moves by default

Fix playback devices enumerating
2020-03-10 11:49:23 +04:00
John Preston c2f58d3ab5 Fix GIFs with alpha display. 2020-02-24 17:48:23 +04:00
John Preston 8e222d3501 Fix closing of fullscreen GIFs by click. 2020-02-24 15:31:28 +04:00
John Preston 6357529901 Fix 90/270 degrees photo rotation.
Fixes #7197.
2020-02-21 18:48:29 +04:00
John Preston 775d5b6dcc Use 64 byte alignment for ffmpeg frames.
Fixes #7225.
2020-02-17 16:44:08 +04:00
John Preston 05c95a0307 Fix fullscreen rotate, fix rotate phrase. 2020-02-13 16:51:05 +04:00
John Preston 093c2887c3 Fix PiP on multi-monitor setup. 2020-02-10 18:45:23 +04:00
John Preston 1f16d72667 Allow setSpeed() on non-active streaming player. 2020-02-06 13:27:21 +04:00
John Preston 6cf9157fb5 Fix jump-to-time from audio captions. 2020-02-06 13:19:33 +04:00
John Preston 76ff9a562e Fix build. 2020-02-05 22:06:40 +04:00
John Preston ffeff09561 Beta version 1.9.10: Fix build for OS X 10.10-10.11. 2020-02-05 22:03:42 +04:00
John Preston d29c3add79 Rotate video in PiP. 2020-02-05 20:04:40 +04:00
John Preston 4544b091a0 Allow rotating content in media viewer. 2020-02-05 19:37:39 +04:00
John Preston 1ad0ff34df Don't overlap video with controls. 2020-02-05 18:39:47 +04:00
John Preston 282c502b71 Show playback time in PiP. 2020-02-05 18:39:47 +04:00
John Preston d6e989cad5 Allow seek in PiP. 2020-02-05 18:39:47 +04:00
John Preston 23388b5705 Display playback progress in PiP. 2020-02-05 18:39:47 +04:00
John Preston 9ed56aa5d6 Good display of not-yet-started streaming in PiP. 2020-02-05 18:39:47 +04:00
John Preston d9c5ab645c Fix radial loading in PiP widget. 2020-02-05 18:39:47 +04:00
John Preston 2cfb3c6755 Display dark background for PiP controls. 2020-02-05 18:39:47 +04:00
John Preston e095c325b3 Move PiP controls to one corner. 2020-02-05 18:39:47 +04:00
John Preston 47f9978c46 Double click on PiP to switch back to fullscreen. 2020-02-05 18:39:47 +04:00
John Preston 2e1e13b843 Rename mediaview.style to media_view.style. 2020-02-05 18:39:47 +04:00
John Preston e13325ca22 Support menu with playback speed. 2020-02-05 18:39:47 +04:00
John Preston e889a52f6f Improve design of video player and PiP controls. 2020-02-05 18:39:47 +04:00
John Preston 4d737b35da Fix PiP window on macOS. 2020-02-05 18:39:47 +04:00
John Preston 0fbd263562 Add shadow and round corners in PiP. 2020-02-05 18:39:47 +04:00
John Preston f81f37505b Save video PiP window geometry. 2020-02-05 18:39:47 +04:00
John Preston 58dd33d8a2 Fix PiP window on macOS. 2020-02-05 18:39:47 +04:00
John Preston f24f27a13c Add volume icon and playback speed info. 2020-02-05 18:39:47 +04:00
John Preston 87cc18aff8 Add video speed control slider. 2020-02-05 18:39:47 +04:00
John Preston b88219902f Add sample PiP controls. 2020-02-05 18:39:47 +04:00
John Preston 63090fb75f Fix build for macOS. 2020-02-05 18:39:46 +04:00
John Preston b5b520ab66 Make non-activatable PiP window. 2020-02-05 18:39:46 +04:00
John Preston 7a6052db81 Implement complex PiP movement. 2020-02-05 18:39:46 +04:00
John Preston a73520c9d8 Allow resizing PiP. 2020-02-05 18:39:46 +04:00
John Preston 55b63cd2e3 Move PiP panel code to a separate class. 2020-02-05 18:39:46 +04:00
John Preston 612ee18a93 Snap PiP to screen edges. 2020-02-05 18:39:46 +04:00
John Preston ca5c9271a3 First prototype of picture-in-picture player. 2020-02-05 18:39:46 +04:00
John Preston fb0ceb110e Fix assertion violation in non-history song player. 2020-01-28 16:55:57 +03:00
23rd b4fbff0b6c Fixed build for Windows with c++latest. 2020-01-21 20:29:14 +03:00
John Preston 5f5d5629f8 Fix memory leak in media streaming. 2020-01-21 18:48:21 +03:00
John Preston 8fb2772093 Fix sent GIFs playback. 2020-01-17 16:58:19 +03:00
John Preston 72d8cd7ef0 Save playback position in long audio files. 2019-12-31 10:30:06 +03:00
John Preston c13e433e65 Fix possible crash in failed media resume. 2019-12-30 13:39:18 +03:00
John Preston d47c138f23 Save streaming player between message edits. 2019-12-28 17:56:06 +03:00
John Preston 79870600d9 Fix saving of playback position for long videos. 2019-12-27 17:09:55 +03:00
John Preston a7fe88bea7 Highlight timestamps in media viewer. 2019-12-27 15:35:35 +03:00
John Preston 90c54b1f2a Highlight timestamps in song captions. 2019-12-26 17:14:35 +03:00
John Preston e9620af6fb Save last playback position for long videos. 2019-12-25 18:19:52 +03:00
John Preston b584204522 Fix sound stop in streamed videos. 2019-12-25 13:12:42 +03:00
John Preston 616957e46f Add file size limit to autoplay settings. 2019-12-24 13:09:04 +03:00
John Preston 8a3506af89 Restore download priorities without streaming. 2019-12-23 14:13:32 +03:00
John Preston 85545dba64 Set higher streaming priority in media overlay. 2019-12-23 13:27:20 +03:00
John Preston fa4d8f2fbd Support priorities in download tasks. 2019-12-23 12:37:03 +03:00
John Preston 8ae6156477 Fix video quality when opening from chat. 2019-12-23 11:10:11 +03:00
John Preston 621a5cc4ab Fix GIFs freezing playback. 2019-12-21 16:57:06 +03:00
John Preston f51f133832 Send packets for processing in batches. 2019-12-19 18:14:05 +03:00
John Preston 041670b8e7 Fix download of short videos in media overlay. 2019-12-19 14:13:27 +03:00
John Preston 4cdf08cbfb Fix video with autoplay disabled. 2019-12-19 13:50:33 +03:00
John Preston 40d4353d05 Allow stopping audio without stopping video. 2019-12-18 21:26:17 +03:00
John Preston a2b6e05cdf Fix inline player for rotated videos. 2019-12-18 20:15:42 +03:00
John Preston 10c810ff03 Lock inline HistoryView::Gif when playing fullscreen. 2019-12-17 17:30:14 +03:00
John Preston 51dac66998 Show inline video playback state. 2019-12-17 16:04:53 +03:00
John Preston 0e75ad42e2 Fix playback state display in round videos. 2019-12-16 17:17:13 +03:00
John Preston ceecbaa904 Continue GIFs in media overlay. 2019-12-16 16:22:53 +03:00
John Preston 38199276f1 Fix round video messages streaming. 2019-12-12 16:26:53 +03:00
John Preston 8211c94a74 Prepare frames for all instances with requests. 2019-12-12 12:34:40 +03:00
John Preston 9339db900f Pause GIFs in message history. 2019-12-11 17:01:11 +03:00
John Preston 2d7adbc68a All players create own Media::Streaming::Instance. 2019-12-11 15:09:21 +03:00
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