From 032de5510359509abae9257acf105eb1afa4de0b Mon Sep 17 00:00:00 2001 From: ZavaruKitsu Date: Sun, 24 Dec 2023 21:12:17 +0300 Subject: [PATCH] feat: better UI --- Telegram/SourceFiles/dialogs/dialogs.style | 6 ++--- .../history/view/history_view_message.cpp | 4 +--- .../view/media/history_view_sticker.cpp | 22 +++++++++++++++---- .../history_view_reactions_selector.cpp | 19 ++++++++-------- 4 files changed, 32 insertions(+), 19 deletions(-) diff --git a/Telegram/SourceFiles/dialogs/dialogs.style b/Telegram/SourceFiles/dialogs/dialogs.style index da0d60b56..d324ca44a 100644 --- a/Telegram/SourceFiles/dialogs/dialogs.style +++ b/Telegram/SourceFiles/dialogs/dialogs.style @@ -98,9 +98,9 @@ forumDialogJumpArrowPosition: point(3px, 3px); forumDialogJumpPadding: margins(8px, 3px, 8px, 3px); forumDialogJumpRadius: 11px; -dialogsOnlineBadgeStroke: 2px; -dialogsOnlineBadgeSize: 10px; -dialogsOnlineBadgeSkip: point(0px, 2px); +dialogsOnlineBadgeStroke: 3px; +dialogsOnlineBadgeSize: 12px; +dialogsOnlineBadgeSkip: point(0px, 0px); dialogsOnlineBadgeDuration: 150; dialogsCallBadgeSize: 16px; diff --git a/Telegram/SourceFiles/history/view/history_view_message.cpp b/Telegram/SourceFiles/history/view/history_view_message.cpp index dd26f7564..50d066f4c 100644 --- a/Telegram/SourceFiles/history/view/history_view_message.cpp +++ b/Telegram/SourceFiles/history/view/history_view_message.cpp @@ -3260,9 +3260,7 @@ bool Message::unwrapped() const { return false; } const auto media = this->media(); - return media - ? (!hasVisibleText() && media->unwrapped()) - : item->isEmpty(); + return media == nullptr && item->isEmpty(); } int Message::minWidthForMedia() const { diff --git a/Telegram/SourceFiles/history/view/media/history_view_sticker.cpp b/Telegram/SourceFiles/history/view/media/history_view_sticker.cpp index b3ff9b069..403f97c19 100644 --- a/Telegram/SourceFiles/history/view/media/history_view_sticker.cpp +++ b/Telegram/SourceFiles/history/view/media/history_view_sticker.cpp @@ -34,6 +34,11 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "chat_helpers/stickers_lottie.h" #include "styles/style_chat.h" +// AyuGram includes +#include "history/view/media/history_view_media.h" +#include "ui/chat/message_bubble.h" + + namespace HistoryView { namespace { @@ -271,11 +276,19 @@ void Sticker::paintAnimationFrame( const auto &image = _lastDiceFrame.isNull() ? frame.image : _lastDiceFrame; - const auto prepared = (!_lastDiceFrame.isNull() && context.selected()) + + const auto rounding = Ui::BubbleRounding{ + .topLeft = Ui::BubbleCornerRounding::Small, + .topRight = Ui::BubbleCornerRounding::Small, + .bottomLeft = Ui::BubbleCornerRounding::Small, + .bottomRight = Ui::BubbleCornerRounding::Small, + }; + auto prepared = (!_lastDiceFrame.isNull() && context.selected()) ? Images::Colored( base::duplicate(image), context.st->msgStickerOverlay()->c) : image; + prepared = Images::Round(std::move(prepared), MediaRoundingMask(rounding)); const auto size = prepared.size() / cIntRetinaFactor(); p.drawImage( QRect( @@ -373,6 +386,7 @@ void Sticker::paintPath( } QPixmap Sticker::paintedPixmap(const PaintContext &context) const { + const auto roundOptions = Images::RoundOptions(ImageRoundRadius::Large); auto helper = std::optional(); const auto colored = (customEmojiPart() && _data->emojiUsesTextColor()) ? &helper.emplace(ComputeEmojiTextColor(context)).color() @@ -381,7 +395,7 @@ QPixmap Sticker::paintedPixmap(const PaintContext &context) const { : nullptr; const auto good = _dataMedia->goodThumbnail(); if (const auto image = _dataMedia->getStickerLarge()) { - return image->pix(_size, { .colored = colored }); + return image->pix(_size, { .colored = colored, .options = roundOptions }); // // Inline thumbnails can't have alpha channel. // @@ -390,11 +404,11 @@ QPixmap Sticker::paintedPixmap(const PaintContext &context) const { // _size, // { .colored = colored, .options = Images::Option::Blur }); } else if (good) { - return good->pix(_size, { .colored = colored }); + return good->pix(_size, { .colored = colored, .options = roundOptions }); } else if (const auto thumbnail = _dataMedia->thumbnail()) { return thumbnail->pix( _size, - { .colored = colored, .options = Images::Option::Blur }); + { .colored = colored, .options = Images::Option::Blur | roundOptions }); } return QPixmap(); } diff --git a/Telegram/SourceFiles/history/view/reactions/history_view_reactions_selector.cpp b/Telegram/SourceFiles/history/view/reactions/history_view_reactions_selector.cpp index 3d0225317..0516e3d2b 100644 --- a/Telegram/SourceFiles/history/view/reactions/history_view_reactions_selector.cpp +++ b/Telegram/SourceFiles/history/view/reactions/history_view_reactions_selector.cpp @@ -650,15 +650,16 @@ void Selector::finishExpand() { } void Selector::paintBubble(QPainter &p, int innerWidth) { - const auto &bubble = _st.icons.stripBubble; - const auto bubbleRight = std::min( - st::reactStripBubbleRight, - (innerWidth - bubble.width()) / 2); - bubble.paint( - p, - _inner.x() + innerWidth - bubbleRight - bubble.width(), - _inner.y() + _inner.height() - _collapsedTopSkip, - width()); + // AyuGram: removed +// const auto &bubble = _st.icons.stripBubble; +// const auto bubbleRight = std::min( +// st::reactStripBubbleRight, +// (innerWidth - bubble.width()) / 2); +// bubble.paint( +// p, +// _inner.x() + innerWidth - bubbleRight - bubble.width(), +// _inner.y() + _inner.height() - _collapsedTopSkip, +// width()); } void Selector::paintEvent(QPaintEvent *e) {