From b179e5332a3eac8cd043b87f3d67e00167242251 Mon Sep 17 00:00:00 2001 From: John Preston Date: Mon, 2 Nov 2020 11:16:04 +0300 Subject: [PATCH] Improve layout of file albums with views/replies. --- .../view/media/history_view_contact.cpp | 4 +++- .../view/media/history_view_document.cpp | 4 +++- .../view/media/history_view_media_grouped.cpp | 20 +++++++++++++++++++ 3 files changed, 26 insertions(+), 2 deletions(-) diff --git a/Telegram/SourceFiles/history/view/media/history_view_contact.cpp b/Telegram/SourceFiles/history/view/media/history_view_contact.cpp index ff87a9b05..cdbfbaf6e 100644 --- a/Telegram/SourceFiles/history/view/media/history_view_contact.cpp +++ b/Telegram/SourceFiles/history/view/media/history_view_contact.cpp @@ -135,8 +135,10 @@ QSize Contact::countOptimalSize() { auto minHeight = st.padding.top() + st.thumbSize + st.padding.bottom(); if (_userId) { const auto msgsigned = item->Get(); + const auto views = item->Get(); if ((msgsigned && !msgsigned->isAnonymousRank) - || item->Has()) { + || (views + && (views->views.count >= 0 || views->replies.count > 0))) { minHeight += st::msgDateFont->height - st::msgDateDelta.y(); } } diff --git a/Telegram/SourceFiles/history/view/media/history_view_document.cpp b/Telegram/SourceFiles/history/view/media/history_view_document.cpp index 1c117c41d..e0a50d517 100644 --- a/Telegram/SourceFiles/history/view/media/history_view_document.cpp +++ b/Telegram/SourceFiles/history/view/media/history_view_document.cpp @@ -195,8 +195,10 @@ QSize Document::countOptimalSize() { auto minHeight = st.padding.top() + st.thumbSize + st.padding.bottom(); const auto msgsigned = item->Get(); + const auto views = item->Get(); if (!captioned && ((msgsigned && !msgsigned->isAnonymousRank) - || item->Has() + || (views + && (views->views.count >= 0 || views->replies.count > 0)) || _parent->displayEditedBadge())) { minHeight += st::msgDateFont->height - st::msgDateDelta.y(); } diff --git a/Telegram/SourceFiles/history/view/media/history_view_media_grouped.cpp b/Telegram/SourceFiles/history/view/media/history_view_media_grouped.cpp index a2ea6af93..742b2a271 100644 --- a/Telegram/SourceFiles/history/view/media/history_view_media_grouped.cpp +++ b/Telegram/SourceFiles/history/view/media/history_view_media_grouped.cpp @@ -145,6 +145,16 @@ QSize GroupedMedia::countOptimalSize() { if (isBubbleBottom()) { minHeight += st::msgPadding.bottom(); } + } else if (_mode == Mode::Column && _parts.back().item->emptyText()) { + const auto item = _parent->data(); + const auto msgsigned = item->Get(); + const auto views = item->Get(); + if ((msgsigned && !msgsigned->isAnonymousRank) + || (views + && (views->views.count >= 0 || views->replies.count > 0)) + || displayedEditBadge()) { + minHeight += st::msgDateFont->height - st::msgDateDelta.y(); + } } const auto groupPadding = groupedPadding(); @@ -205,6 +215,16 @@ QSize GroupedMedia::countCurrentSize(int newWidth) { if (isBubbleBottom()) { newHeight += st::msgPadding.bottom(); } + } else if (_mode == Mode::Column && _parts.back().item->emptyText()) { + const auto item = _parent->data(); + const auto msgsigned = item->Get(); + const auto views = item->Get(); + if ((msgsigned && !msgsigned->isAnonymousRank) + || (views + && (views->views.count >= 0 || views->replies.count > 0)) + || displayedEditBadge()) { + newHeight += st::msgDateFont->height - st::msgDateDelta.y(); + } } const auto groupPadding = groupedPadding();