diff --git a/Telegram/SourceFiles/data/data_replies_list.cpp b/Telegram/SourceFiles/data/data_replies_list.cpp index 28d489e68..3263c788a 100644 --- a/Telegram/SourceFiles/data/data_replies_list.cpp +++ b/Telegram/SourceFiles/data/data_replies_list.cpp @@ -935,15 +935,15 @@ void RepliesList::readTill(not_null item) { } void RepliesList::readTill(MsgId tillId) { - if (!IsServerMsgId(tillId)) { - return; - } readTill(tillId, _history->owner().message(_history->peer->id, tillId)); } void RepliesList::readTill( MsgId tillId, HistoryItem *tillIdItem) { + if (!IsServerMsgId(tillId)) { + return; + } const auto was = computeInboxReadTillFull(); const auto now = tillId; if (now < was) { diff --git a/Telegram/SourceFiles/history/view/history_view_list_widget.cpp b/Telegram/SourceFiles/history/view/history_view_list_widget.cpp index 10a7d442e..74e95d163 100644 --- a/Telegram/SourceFiles/history/view/history_view_list_widget.cpp +++ b/Telegram/SourceFiles/history/view/history_view_list_widget.cpp @@ -1962,7 +1962,11 @@ void ListWidget::checkActivation() { for (const auto &view : ranges::views::reverse(_items)) { const auto bottom = itemTop(view) + view->height(); if (_visibleBottom + _itemsRevealHeight >= bottom) { - delegate()->listMarkReadTill(view->data()); + const auto item = view->data(); + if (item->isRegular()) { + delegate()->listMarkReadTill(item); + return; + } } } }