From 41aabe486b6815b2e7ef228c2942e23d08f5e880 Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Thu, 19 Mar 2026 23:11:28 +0300 Subject: [PATCH] [poll-view] Fixed attached video rounding and aspect ratio. --- .../history/view/media/history_view_gif.cpp | 4 +++- .../history/view/media/history_view_poll.cpp | 20 +++++++++---------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Telegram/SourceFiles/history/view/media/history_view_gif.cpp b/Telegram/SourceFiles/history/view/media/history_view_gif.cpp index 1d1fa149cd..86ad412de2 100644 --- a/Telegram/SourceFiles/history/view/media/history_view_gif.cpp +++ b/Telegram/SourceFiles/history/view/media/history_view_gif.cpp @@ -450,7 +450,9 @@ void Gif::draw(Painter &p, const PaintContext &context) const { const auto inWebPage = (_parent->media() != this); const auto isRound = _data->isVideoMessage(); - const auto rounding = inWebPage + const auto rounding = (inWebPage + // Dangerous change. + && bubbleRounding() == Ui::BubbleRounding()) ? std::optional() : adjustedBubbleRounding(); diff --git a/Telegram/SourceFiles/history/view/media/history_view_poll.cpp b/Telegram/SourceFiles/history/view/media/history_view_poll.cpp index 7f90b7c264..cd7b7dac3b 100644 --- a/Telegram/SourceFiles/history/view/media/history_view_poll.cpp +++ b/Telegram/SourceFiles/history/view/media/history_view_poll.cpp @@ -875,9 +875,8 @@ int Poll::countAttachHeight() const { return 0; } _attachedMediaAttach->initDimensions(); - const auto innerWidth = width() - - st::msgPadding.left() - - st::msgPadding.right(); + const auto sideSkip = st::historyPollMediaSideSkip; + const auto innerWidth = width() - 2 * sideSkip; return _attachedMediaAttach->resizeGetHeight( std::max(1, innerWidth)); } @@ -1421,14 +1420,14 @@ void Poll::draw(Painter &p, const PaintContext &context) const { if (const auto mediaHeight = countTopMediaHeight()) { if (_attachedMediaAttach) { - const auto shift = st::msgFileLayout.padding.left(); - const auto attachLeft = padding.left() - shift; - p.translate(attachLeft, tshift); + const auto sideSkip = st::historyPollMediaSideSkip; + _attachedMediaAttach->setBubbleRounding(topMediaRounding()); + p.translate(sideSkip, tshift); _attachedMediaAttach->draw( p, - context.translated(-attachLeft, -tshift) + context.translated(-sideSkip, -tshift) .withSelection(TextSelection())); - p.translate(-attachLeft, -tshift); + p.translate(-sideSkip, -tshift); } else { const auto target = countTopMediaRect(tshift); p.setPen(Qt::NoPen); @@ -2462,11 +2461,10 @@ TextState Poll::textState(QPoint point, StateRequest request) const { if (const auto mediaHeight = countTopMediaHeight()) { if (_attachedMediaAttach) { - const auto shift = st::msgFileLayout.padding.left(); - const auto attachLeft = padding.left() - shift; + const auto sideSkip = st::historyPollMediaSideSkip; if (_attachedMedia->handler && QRect( - attachLeft, + sideSkip, tshift, _attachedMediaAttach->width(), mediaHeight).contains(point)) {