mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-04-22 09:07:05 +02:00
Fixed injecting of sponsored messages at first load of history messages.
This commit is contained in:
parent
1b3cf0a654
commit
ec6dda47ae
2 changed files with 7 additions and 2 deletions
|
@ -2065,6 +2065,7 @@ void HistoryWidget::showHistory(
|
|||
}
|
||||
return;
|
||||
} else {
|
||||
_sponsoredMessagesStateKnown = false;
|
||||
session().data().sponsoredMessages().clearItems(_history);
|
||||
session().data().hideShownSpoilers();
|
||||
_composeSearch = nullptr;
|
||||
|
@ -2299,6 +2300,7 @@ void HistoryWidget::showHistory(
|
|||
auto &sponsored = session().data().sponsoredMessages();
|
||||
using State = Data::SponsoredMessages::State;
|
||||
const auto state = sponsored.state(_history);
|
||||
_sponsoredMessagesStateKnown = (state != State::None);
|
||||
if (state == State::AppendToEnd) {
|
||||
_scroll->setTrackingContent(
|
||||
sponsored.canHaveFor(_history));
|
||||
|
@ -3074,7 +3076,7 @@ void HistoryWidget::messagesReceived(
|
|||
int requestId) {
|
||||
Expects(_history != nullptr);
|
||||
|
||||
bool toMigrated = (peer == _peer->migrateFrom());
|
||||
const auto toMigrated = (peer == _peer->migrateFrom());
|
||||
if (peer != _peer && !toMigrated) {
|
||||
if (_preloadRequest == requestId) {
|
||||
_preloadRequest = 0;
|
||||
|
@ -3148,6 +3150,7 @@ void HistoryWidget::messagesReceived(
|
|||
}
|
||||
|
||||
historyLoaded();
|
||||
injectSponsoredMessages();
|
||||
} else if (_delayedShowAtRequest == requestId) {
|
||||
if (toMigrated) {
|
||||
_history->clear(History::ClearType::Unload);
|
||||
|
@ -3352,7 +3355,7 @@ void HistoryWidget::loadMessagesDown() {
|
|||
|
||||
auto loadMigrated = _migrated && !(_migrated->isEmpty() || _migrated->loadedAtBottom() || (!_history->isEmpty() && !_history->loadedAtTop()));
|
||||
auto from = loadMigrated ? _migrated : _history;
|
||||
if (from->loadedAtBottom()) {
|
||||
if (from->loadedAtBottom() && _sponsoredMessagesStateKnown) {
|
||||
session().data().sponsoredMessages().request(_history, nullptr);
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -793,6 +793,8 @@ private:
|
|||
ItemRevealAnimation> _itemRevealAnimations;
|
||||
int _itemsRevealHeight = 0;
|
||||
|
||||
bool _sponsoredMessagesStateKnown = false;
|
||||
|
||||
object_ptr<Ui::PlainShadow> _topShadow;
|
||||
bool _inGrab = false;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue