diff --git a/Telegram/SourceFiles/data/data_chat_filters.cpp b/Telegram/SourceFiles/data/data_chat_filters.cpp index e8c5db062..dab96d40d 100644 --- a/Telegram/SourceFiles/data/data_chat_filters.cpp +++ b/Telegram/SourceFiles/data/data_chat_filters.cpp @@ -358,8 +358,11 @@ void ChatFilters::clear() { _list.clear(); } -void ChatFilters::setPreloaded(const QVector &result) { +void ChatFilters::setPreloaded( + const QVector &result, + bool tagsEnabled) { _loadRequestId = -1; + _tagsEnabled = tagsEnabled; received(result); crl::on_main(&_owner->session(), [=] { if (_loadRequestId == -1) { diff --git a/Telegram/SourceFiles/data/data_chat_filters.h b/Telegram/SourceFiles/data/data_chat_filters.h index 5f876de24..c33862aec 100644 --- a/Telegram/SourceFiles/data/data_chat_filters.h +++ b/Telegram/SourceFiles/data/data_chat_filters.h @@ -136,7 +136,9 @@ public: explicit ChatFilters(not_null owner); ~ChatFilters(); - void setPreloaded(const QVector &result); + void setPreloaded( + const QVector &result, + bool tagsEnabled); void load(); void reload(); diff --git a/Telegram/SourceFiles/intro/intro_step.cpp b/Telegram/SourceFiles/intro/intro_step.cpp index 9e9a266f6..e019da124 100644 --- a/Telegram/SourceFiles/intro/intro_step.cpp +++ b/Telegram/SourceFiles/intro/intro_step.cpp @@ -194,16 +194,18 @@ void Step::finish(const MTPUser &user, QImage &&photo) { api().request(MTPmessages_GetDialogFilters( )).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([=] { - createSession(user, photo, QVector()); + createSession(user, photo, QVector(), false); }).send(); } void Step::createSession( const MTPUser &user, QImage photo, - const QVector &filters) { + const QVector &filters, + bool tagsEnabled) { // Save the default language if we've suggested some other and user ignored it. const auto currentId = Lang::Id(); const auto defaultId = Lang::DefaultLanguageId(); @@ -227,7 +229,7 @@ void Step::createSession( account->local().enforceModernStorageIdBots(); account->local().writeMtpData(); auto &session = account->session(); - session.data().chatsFilters().setPreloaded(filters); + session.data().chatsFilters().setPreloaded(filters, tagsEnabled); if (hasFilters) { session.saveSettingsDelayed(); } diff --git a/Telegram/SourceFiles/intro/intro_step.h b/Telegram/SourceFiles/intro/intro_step.h index 660e2c367..f265a4a98 100644 --- a/Telegram/SourceFiles/intro/intro_step.h +++ b/Telegram/SourceFiles/intro/intro_step.h @@ -116,7 +116,8 @@ protected: void createSession( const MTPUser &user, QImage photo, - const QVector &filters); + const QVector &filters, + bool tagsEnabled); void goBack();