Commit Graph

946 Commits

Author SHA1 Message Date
23rd 57c50c8655 Optimized includes of attach_prepare.h. 2022-11-22 00:26:48 +00:00
Ilya Fedin afaad155a0 Update to changes in MPRIS SystemMediaControlsManager backend
And let it use service name provided by flatpak by default
2022-11-11 11:47:13 +04:00
John Preston 644ec1f599 Remove base::Observable / base::Variable. 2022-11-11 11:43:24 +04:00
John Preston 73e2cc96d1 Fix music player with RTL song names. 2022-11-11 11:43:06 +04:00
Ilya Fedin 0cd0ad7a5b Handle cancel for default download path in Linux sandbox 2022-11-10 00:24:37 +04:00
23rd 371ba40a50 Added volume button to media player for voices. 2022-11-06 18:55:11 +03:00
John Preston 7ec1af5e50 Forbid saving / copying of extended media.
Fixes #25227.
2022-11-01 19:25:45 +04:00
John Preston 18bf5c0ee2 Handle nice topic / post-in-topic links. 2022-11-01 19:25:43 +04:00
23rd 1cd02fc3c9 Added display of video message in transcribed view. 2022-11-01 19:25:42 +04:00
23rd 6d3f9017fa Added ability to report chat photo and channel photo. 2022-11-01 19:25:41 +04:00
John Preston 6695eda1be Handle forum-non_forum changes in realtime. 2022-11-01 19:25:37 +04:00
John Preston 58b8eb8e96 Implement per-topic shared media. 2022-11-01 19:25:37 +04:00
John Preston 3722e55b67 Support topic on-the-fly creation. 2022-11-01 19:25:35 +04:00
John Preston e5f2d83548 Support new rounding in bot inline keyboards. 2022-11-01 19:25:35 +04:00
John Preston 8268e9f872 Support new rounding for GIFs / videos. 2022-11-01 19:25:35 +04:00
Ilya Fedin 4832e3b3ab Fix the comment about surface size in media_view_pip
Surface size is buffer size, in fact...
2022-10-30 07:35:33 +04:00
Ilya Fedin 7b5781b845 Use default-constructed QLocale for date/time/whatever else formatting
Qt 6 chenged the QDateTime API to use QLocale::c() rather than QLocale::system(), using default-constructed QLocale will make this consistent and overradable application-wide

Other formating use-cases as QLocale::decimalPoint use default-constructed QLocale now, too
2022-10-17 08:33:22 +04:00
John Preston bcfe4ac4a3 Allow revealing spoilers in media viewer captions. 2022-09-23 23:50:21 +04:00
John Preston fc3810fd7f Improve scaling / expanding for photos.
Fixes #25061.
2022-09-19 17:44:59 +04:00
John Preston 749fb52113 Implement animated spoilers. 2022-09-18 16:52:30 +04:00
John Preston 20b5138e00 Initial implementation of ExtendedMedia. 2022-09-12 09:06:26 +04:00
John Preston d6ba092697 Make GIFs and videos with captions larger. 2022-09-05 19:03:52 +04:00
Alexander Kernozhitsky a5bd4ef6f7 Fix code style 2022-09-04 08:04:02 +04:00
Alexander Kernozhitsky c6c2a44e9d Patch the remaining uses or FFmpeg APIs 2022-09-04 08:04:02 +04:00
Alexander Kernozhitsky 21b0454461 Remove duplicate line
Co-authored-by: darkkeks <darkkeks@rambler.ru>
2022-09-04 08:04:02 +04:00
Alexander Kernozhitsky ca4b5edf21 Correct FFmpeg API usage
FFmpeg docs say that you must return AVERROR_EOF from the read callback, not zero. Still, Telegram just propagates the return value from IODevice::read() call, which returns zero in case of EOF.

I don't know whether this commit has any effect on the upstream build, but it fixes a bug in Debian build of Telegram, which is using FFmpeg 5.1 instead of 4.4. Still, it's also useful in the upstream, as it makes work with FFmpeg more correct.
2022-09-04 08:04:02 +04:00
Ilya Fedin b48674d302 Avoid unneccesary QPA, again 2022-09-03 08:47:02 +04:00
Ilya Fedin dfb40dd216 Handle PiP aspect ratio on Wayland synchronously
During testing with Qt 6.4 I now remember why I made a way complicated logic (yes, because the trivial one bugs with Qt 6.4)
This restores it, but uses event filters rather than hardware integration override
2022-09-03 08:41:49 +04:00
John Preston a0d5456a4d PoC content outside of PopupMenu. 2022-09-02 21:14:29 +04:00
John Preston 184ebc865c Fix downloading videos of size > INT_MAX to disk. 2022-08-16 08:56:30 +03:00
Ilya Fedin b9181db407 Don't use QWindowSystemInterface in the PiP
It provides no difference, there was a mistake while testing the behavior
2022-08-12 19:51:04 +03:00
John Preston 8bc807dc40 Set name / phone texts on-demand. 2022-08-09 14:12:19 +03:00
Ilya Fedin 8c1bef929e A better way of PiP aspect ratio handling on Wayland 2022-08-08 11:05:52 +04:00
Ilya Fedin 66d2c06eb4 Update minimum & maximum size in the PiP 2022-08-04 21:27:57 +04:00
Ilya Fedin 9e63fc5acd Let PiP have custom buffer size on Wayland 2022-08-04 16:41:25 +04:00
John Preston f8e22210e7 Move Webm sticker to UnwrappedMedia. 2022-08-04 13:35:34 +03:00
John Preston 5472654ac1 Show "You" in out voice messages player. 2022-08-02 16:48:47 +03:00
Ilya Fedin be133fce78 Follow TitleControlsLayout in the PiP 2022-08-01 13:53:50 +04:00
John Preston 289602528c Fix custom emoji pausing in captions. 2022-07-26 20:12:08 +03:00
John Preston 2499955496 Support custom emoji in the message input field. 2022-07-26 20:12:08 +03:00
John Preston 2e6733e433 Proof-of-concept animated custom emoji. 2022-07-26 20:12:08 +03:00
Niklas Haas 6096116526 Use quasi-logarithmic volume controls
This commit significantly improves the usability of the volume controls
for controlling volume in a way that matches intuitively onto human
needs and loudness perception.

Using the third power of the volume is a good approximation of the
quasi-logarithmic psychoacoustic system, while being defined everywhere
and preserving the useful quality of 0% volume mapping onto gain 0.0.
The use of this exact mapping function is a prior art established by
e.g. PulseAudio, among many other programs.

Fixes #24488
2022-07-19 19:32:46 +04:00
Ilya Fedin 45d2baa2c4 Restore missed QWindow::setScreen 2022-06-21 22:19:32 +04:00
Ilya Fedin 984094a7ff Partially revert "Use QWidget::screen/QWidget::mask instead of QWindow ones"
This partially reverts commit e5d8a1aa3c to use QWindow::setScreen.
2022-06-21 00:03:21 +04:00
John Preston 60d998bf36 Fix build on Linux. 2022-06-14 21:27:50 +04:00
23rd fe7cffc509 Improved management of online status from non-primary windows.
– The online status of the user should be checked and updated only
when the previous active window and the current active window both have
different sessions.
– Removed MainWindow::activeChangedHook since windows should not
change online status on their own on activating.
– Renamed Application::maybeActiveSession
to Application::maybePrimarySession.
– Added updating of online status on changing of the current account
since this seems to have been missed.
2022-06-12 16:07:41 +03:00
23rd 1d475ee727 Slightly optimized includes in application.h. 2022-06-12 16:07:41 +03:00
John Preston 333b986098 Remove ToS and Privacy Policy footer. 2022-06-12 16:51:55 +04:00
23rd 6ca167679d Added ability to invoke callback for non-primary window controllers. 2022-06-10 14:57:44 +03:00
23rd 43c0197445 Removed Ui::hideLayer from places that can be in non-primary windows. 2022-06-09 07:06:01 +03:00