mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-05 06:33:57 +02:00
fix: better sendReadStories
This commit is contained in:
parent
17c7993240
commit
3d24395d2e
1 changed files with 30 additions and 33 deletions
|
@ -1148,6 +1148,16 @@ void Stories::sendMarkAsReadRequest(
|
||||||
StoryId tillId) {
|
StoryId tillId) {
|
||||||
Expects(peer->isUser());
|
Expects(peer->isUser());
|
||||||
|
|
||||||
|
// AyuGram sendReadStories
|
||||||
|
const auto settings = &AyuSettings::getInstance();
|
||||||
|
|
||||||
|
if (!settings->sendReadStories)
|
||||||
|
{
|
||||||
|
_markReadRequests.clear();
|
||||||
|
_markReadPending.clear();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
const auto peerId = peer->id;
|
const auto peerId = peer->id;
|
||||||
_markReadRequests.emplace(peerId);
|
_markReadRequests.emplace(peerId);
|
||||||
const auto finish = [=] {
|
const auto finish = [=] {
|
||||||
|
@ -1158,22 +1168,11 @@ void Stories::sendMarkAsReadRequest(
|
||||||
}
|
}
|
||||||
checkQuitPreventFinished();
|
checkQuitPreventFinished();
|
||||||
};
|
};
|
||||||
|
const auto api = &_owner->session().api();
|
||||||
// AyuGram sendReadStories
|
api->request(MTPstories_ReadStories(
|
||||||
const auto settings = &AyuSettings::getInstance();
|
peer->asUser()->inputUser,
|
||||||
|
MTP_int(tillId)
|
||||||
if (settings->sendReadStories)
|
)).done(finish).fail(finish).send();
|
||||||
{
|
|
||||||
const auto api = &_owner->session().api();
|
|
||||||
api->request(MTPstories_ReadStories(
|
|
||||||
peer->asUser()->inputUser,
|
|
||||||
MTP_int(tillId)
|
|
||||||
)).done(finish).fail(finish).send();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
finish();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Stories::checkQuitPreventFinished() {
|
void Stories::checkQuitPreventFinished() {
|
||||||
|
@ -1205,6 +1204,16 @@ void Stories::sendIncrementViewsRequests() {
|
||||||
if (_incrementViewsPending.empty()) {
|
if (_incrementViewsPending.empty()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// AyuGram sendReadStories
|
||||||
|
const auto settings = &AyuSettings::getInstance();
|
||||||
|
if (!settings->sendReadStories)
|
||||||
|
{
|
||||||
|
_incrementViewsPending.clear();
|
||||||
|
_incrementViewsRequests.clear();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
auto ids = QVector<MTPint>();
|
auto ids = QVector<MTPint>();
|
||||||
struct Prepared {
|
struct Prepared {
|
||||||
PeerId peer = 0;
|
PeerId peer = 0;
|
||||||
|
@ -1232,23 +1241,11 @@ void Stories::sendIncrementViewsRequests() {
|
||||||
}
|
}
|
||||||
checkQuitPreventFinished();
|
checkQuitPreventFinished();
|
||||||
};
|
};
|
||||||
|
api->request(MTPstories_IncrementStoryViews(
|
||||||
// AyuGram sendReadStories
|
_owner->peer(peer)->asUser()->inputUser,
|
||||||
const auto settings = &AyuSettings::getInstance();
|
MTP_vector<MTPint>(std::move(ids))
|
||||||
|
)).done(finish).fail(finish).send();
|
||||||
if (settings->sendReadStories)
|
_incrementViewsPending.remove(peer);
|
||||||
{
|
|
||||||
api->request(MTPstories_IncrementStoryViews(
|
|
||||||
_owner->peer(peer)->asUser()->inputUser,
|
|
||||||
MTP_vector<MTPint>(std::move(ids))
|
|
||||||
)).done(finish).fail(finish).send();
|
|
||||||
_incrementViewsPending.remove(peer);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
_incrementViewsPending.remove(peer);
|
|
||||||
finish();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue