From 8af559e711a778d1861d39bfb9b595e8b28f4a5b Mon Sep 17 00:00:00 2001 From: John Preston Date: Wed, 16 Sep 2020 11:25:57 +0300 Subject: [PATCH] Use first message of album as the leader. --- Telegram/SourceFiles/data/data_session.cpp | 2 +- Telegram/SourceFiles/history/history_item.cpp | 2 +- Telegram/SourceFiles/history/history_widget.cpp | 4 ++-- Telegram/SourceFiles/history/view/history_view_element.cpp | 2 +- .../SourceFiles/history/view/history_view_list_widget.cpp | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Telegram/SourceFiles/data/data_session.cpp b/Telegram/SourceFiles/data/data_session.cpp index cde9558783..836ed9f486 100644 --- a/Telegram/SourceFiles/data/data_session.cpp +++ b/Telegram/SourceFiles/data/data_session.cpp @@ -1234,7 +1234,7 @@ void Session::notifyItemIdChange(IdChange event) { }; enumerateItemViews(item, refreshViewDataId); if (const auto group = groups().find(item)) { - const auto leader = group->items.back(); + const auto leader = group->items.front(); if (leader != item) { enumerateItemViews(leader, refreshViewDataId); } diff --git a/Telegram/SourceFiles/history/history_item.cpp b/Telegram/SourceFiles/history/history_item.cpp index 76ebd7e3b6..845de23f6b 100644 --- a/Telegram/SourceFiles/history/history_item.cpp +++ b/Telegram/SourceFiles/history/history_item.cpp @@ -199,7 +199,7 @@ void HistoryItem::finishEdition(int oldKeyboardTop) { _history->owner().requestItemViewRefresh(this); invalidateChatListEntry(); if (const auto group = _history->owner().groups().find(this)) { - const auto leader = group->items.back(); + const auto leader = group->items.front(); if (leader != this) { _history->owner().requestItemViewRefresh(leader); leader->invalidateChatListEntry(); diff --git a/Telegram/SourceFiles/history/history_widget.cpp b/Telegram/SourceFiles/history/history_widget.cpp index 117b71f676..34285e6d3c 100644 --- a/Telegram/SourceFiles/history/history_widget.cpp +++ b/Telegram/SourceFiles/history/history_widget.cpp @@ -930,7 +930,7 @@ void HistoryWidget::scrollToAnimationCallback( void HistoryWidget::enqueueMessageHighlight( not_null view) { if (const auto group = session().data().groups().find(view->data())) { - if (const auto leader = group->items.back()->mainView()) { + if (const auto leader = group->items.front()->mainView()) { view = leader; } } @@ -1020,7 +1020,7 @@ void HistoryWidget::clearHighlightMessages() { int HistoryWidget::itemTopForHighlight( not_null view) const { if (const auto group = session().data().groups().find(view->data())) { - if (const auto leader = group->items.back()->mainView()) { + if (const auto leader = group->items.front()->mainView()) { view = leader; } } diff --git a/Telegram/SourceFiles/history/view/history_view_element.cpp b/Telegram/SourceFiles/history/view/history_view_element.cpp index f8f0073b28..53b984c110 100644 --- a/Telegram/SourceFiles/history/view/history_view_element.cpp +++ b/Telegram/SourceFiles/history/view/history_view_element.cpp @@ -358,7 +358,7 @@ void Element::refreshMedia(Element *replacing) { const auto media = item->media(); if (media && media->canBeGrouped()) { if (const auto group = history()->owner().groups().find(item)) { - if (group->items.back() != item) { + if (group->items.front() != item) { _media = nullptr; _flags |= Flag::HiddenByGroup; } else { diff --git a/Telegram/SourceFiles/history/view/history_view_list_widget.cpp b/Telegram/SourceFiles/history/view/history_view_list_widget.cpp index ae5a2a2d2f..9f413fdb38 100644 --- a/Telegram/SourceFiles/history/view/history_view_list_widget.cpp +++ b/Telegram/SourceFiles/history/view/history_view_list_widget.cpp @@ -371,7 +371,7 @@ std::optional ListWidget::scrollTopForView( not_null view) const { if (view->isHiddenByGroup()) { if (const auto group = session().data().groups().find(view->data())) { - if (const auto leader = viewForItem(group->items.back())) { + if (const auto leader = viewForItem(group->items.front())) { if (!leader->isHiddenByGroup()) { return scrollTopForView(leader); } @@ -1371,7 +1371,7 @@ TextSelection ListWidget::computeRenderSelection( }; const auto item = view->data(); if (const auto group = session().data().groups().find(item)) { - if (group->items.back() != item) { + if (group->items.front() != item) { return TextSelection(); } auto result = TextSelection();