From fdf826b686aac2d971f8f9ad20eb9aa4155df4aa Mon Sep 17 00:00:00 2001 From: John Preston Date: Thu, 10 Oct 2024 14:51:12 +0400 Subject: [PATCH] Improve gifts layout a bit. --- .../SourceFiles/info/peer_gifts/info_peer_gifts_common.cpp | 6 +++++- .../SourceFiles/info/profile/info_profile_inner_widget.cpp | 4 +++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Telegram/SourceFiles/info/peer_gifts/info_peer_gifts_common.cpp b/Telegram/SourceFiles/info/peer_gifts/info_peer_gifts_common.cpp index 83649bf5a..dd12b6646 100644 --- a/Telegram/SourceFiles/info/peer_gifts/info_peer_gifts_common.cpp +++ b/Telegram/SourceFiles/info/peer_gifts/info_peer_gifts_common.cpp @@ -82,7 +82,7 @@ void GiftButton::setDescriptor(const GiftDescriptor &descriptor) { }, [&](const GiftTypeStars &data) { _price.setMarkedText( st::semiboldTextStyle, - _delegate->star().append(QString::number(data.stars)), + _delegate->star().append(' ' + QString::number(data.stars)), kMarkupTextOptions, _delegate->textContext()); _userpic = !data.userpic @@ -284,6 +284,10 @@ void GiftButton::paintEvent(QPaintEvent *e) { const auto twidth = font->width(text); const auto pos = position + QPoint(singlew - twidth, font->height); p.save(); + const auto rubberOut = _extend.top(); + const auto inner = rect().marginsRemoved(_extend); + p.setClipRect(inner.marginsAdded( + { rubberOut, rubberOut, rubberOut, rubberOut })); p.translate(pos); p.rotate(45.); p.translate(-pos); diff --git a/Telegram/SourceFiles/info/profile/info_profile_inner_widget.cpp b/Telegram/SourceFiles/info/profile/info_profile_inner_widget.cpp index be2a2bb29..5a9a81942 100644 --- a/Telegram/SourceFiles/info/profile/info_profile_inner_widget.cpp +++ b/Telegram/SourceFiles/info/profile/info_profile_inner_widget.cpp @@ -253,6 +253,9 @@ object_ptr InnerWidget::setupSharedMedia( if (!_topic) { addStoriesButton(_peer, st::infoIconMediaStories); + if (const auto user = _peer->asUser()) { + addPeerGiftsButton(user, st::infoIconMediaGifts); + } addSavedSublistButton(_peer, st::infoIconMediaSaved); } addMediaButton(MediaType::Photo, st::infoIconMediaPhoto); @@ -264,7 +267,6 @@ object_ptr InnerWidget::setupSharedMedia( addMediaButton(MediaType::GIF, st::infoIconMediaGif); if (const auto user = _peer->asUser()) { addCommonGroupsButton(user, st::infoIconMediaGroup); - addPeerGiftsButton(user, st::infoIconMediaGifts); } else if (const auto channel = _peer->asChannel()) { addSimilarChannelsButton(channel, st::infoIconMediaChannel); }