mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-05 06:33:57 +02:00
Added ability to pass preloaded chats filter tags toggle on logging in.
This commit is contained in:
parent
d5dbbd566f
commit
9d5ca1252a
4 changed files with 15 additions and 7 deletions
|
@ -358,8 +358,11 @@ void ChatFilters::clear() {
|
||||||
_list.clear();
|
_list.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChatFilters::setPreloaded(const QVector<MTPDialogFilter> &result) {
|
void ChatFilters::setPreloaded(
|
||||||
|
const QVector<MTPDialogFilter> &result,
|
||||||
|
bool tagsEnabled) {
|
||||||
_loadRequestId = -1;
|
_loadRequestId = -1;
|
||||||
|
_tagsEnabled = tagsEnabled;
|
||||||
received(result);
|
received(result);
|
||||||
crl::on_main(&_owner->session(), [=] {
|
crl::on_main(&_owner->session(), [=] {
|
||||||
if (_loadRequestId == -1) {
|
if (_loadRequestId == -1) {
|
||||||
|
|
|
@ -136,7 +136,9 @@ public:
|
||||||
explicit ChatFilters(not_null<Session*> owner);
|
explicit ChatFilters(not_null<Session*> owner);
|
||||||
~ChatFilters();
|
~ChatFilters();
|
||||||
|
|
||||||
void setPreloaded(const QVector<MTPDialogFilter> &result);
|
void setPreloaded(
|
||||||
|
const QVector<MTPDialogFilter> &result,
|
||||||
|
bool tagsEnabled);
|
||||||
|
|
||||||
void load();
|
void load();
|
||||||
void reload();
|
void reload();
|
||||||
|
|
|
@ -194,16 +194,18 @@ void Step::finish(const MTPUser &user, QImage &&photo) {
|
||||||
|
|
||||||
api().request(MTPmessages_GetDialogFilters(
|
api().request(MTPmessages_GetDialogFilters(
|
||||||
)).done([=](const MTPmessages_DialogFilters &result) {
|
)).done([=](const MTPmessages_DialogFilters &result) {
|
||||||
createSession(user, photo, result.data().vfilters().v);
|
const auto &d = result.data();
|
||||||
|
createSession(user, photo, d.vfilters().v, d.is_tags_enabled());
|
||||||
}).fail([=] {
|
}).fail([=] {
|
||||||
createSession(user, photo, QVector<MTPDialogFilter>());
|
createSession(user, photo, QVector<MTPDialogFilter>(), false);
|
||||||
}).send();
|
}).send();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Step::createSession(
|
void Step::createSession(
|
||||||
const MTPUser &user,
|
const MTPUser &user,
|
||||||
QImage photo,
|
QImage photo,
|
||||||
const QVector<MTPDialogFilter> &filters) {
|
const QVector<MTPDialogFilter> &filters,
|
||||||
|
bool tagsEnabled) {
|
||||||
// Save the default language if we've suggested some other and user ignored it.
|
// Save the default language if we've suggested some other and user ignored it.
|
||||||
const auto currentId = Lang::Id();
|
const auto currentId = Lang::Id();
|
||||||
const auto defaultId = Lang::DefaultLanguageId();
|
const auto defaultId = Lang::DefaultLanguageId();
|
||||||
|
@ -227,7 +229,7 @@ void Step::createSession(
|
||||||
account->local().enforceModernStorageIdBots();
|
account->local().enforceModernStorageIdBots();
|
||||||
account->local().writeMtpData();
|
account->local().writeMtpData();
|
||||||
auto &session = account->session();
|
auto &session = account->session();
|
||||||
session.data().chatsFilters().setPreloaded(filters);
|
session.data().chatsFilters().setPreloaded(filters, tagsEnabled);
|
||||||
if (hasFilters) {
|
if (hasFilters) {
|
||||||
session.saveSettingsDelayed();
|
session.saveSettingsDelayed();
|
||||||
}
|
}
|
||||||
|
|
|
@ -116,7 +116,8 @@ protected:
|
||||||
void createSession(
|
void createSession(
|
||||||
const MTPUser &user,
|
const MTPUser &user,
|
||||||
QImage photo,
|
QImage photo,
|
||||||
const QVector<MTPDialogFilter> &filters);
|
const QVector<MTPDialogFilter> &filters,
|
||||||
|
bool tagsEnabled);
|
||||||
|
|
||||||
void goBack();
|
void goBack();
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue