Return GlobalPrivacySettings from get_global_privacy_settings.
This commit is contained in:
parent
b2f8a8e5d6
commit
9802119ff7
@ -21,11 +21,10 @@
|
||||
namespace td {
|
||||
|
||||
class GetGlobalPrivacySettingsQuery final : public Td::ResultHandler {
|
||||
Promise<td_api::object_ptr<td_api::archiveChatListSettings>> promise_;
|
||||
Promise<GlobalPrivacySettings> promise_;
|
||||
|
||||
public:
|
||||
explicit GetGlobalPrivacySettingsQuery(Promise<td_api::object_ptr<td_api::archiveChatListSettings>> &&promise)
|
||||
: promise_(std::move(promise)) {
|
||||
explicit GetGlobalPrivacySettingsQuery(Promise<GlobalPrivacySettings> &&promise) : promise_(std::move(promise)) {
|
||||
}
|
||||
|
||||
void send() {
|
||||
@ -38,8 +37,7 @@ class GetGlobalPrivacySettingsQuery final : public Td::ResultHandler {
|
||||
return on_error(result_ptr.move_as_error());
|
||||
}
|
||||
|
||||
auto settings = GlobalPrivacySettings(result_ptr.move_as_ok());
|
||||
promise_.set_value(settings.get_archive_chat_list_settings_object());
|
||||
promise_.set_value(GlobalPrivacySettings(result_ptr.move_as_ok()));
|
||||
}
|
||||
|
||||
void on_error(Status status) final {
|
||||
@ -109,8 +107,7 @@ td_api::object_ptr<td_api::archiveChatListSettings> GlobalPrivacySettings::get_a
|
||||
keep_archived_unmuted_, keep_archived_folders_);
|
||||
}
|
||||
|
||||
void GlobalPrivacySettings::get_global_privacy_settings(
|
||||
Td *td, Promise<td_api::object_ptr<td_api::archiveChatListSettings>> &&promise) {
|
||||
void GlobalPrivacySettings::get_global_privacy_settings(Td *td, Promise<GlobalPrivacySettings> &&promise) {
|
||||
td->create_handler<GetGlobalPrivacySettingsQuery>(std::move(promise))->send();
|
||||
}
|
||||
|
||||
|
@ -30,8 +30,7 @@ class GlobalPrivacySettings {
|
||||
|
||||
td_api::object_ptr<td_api::archiveChatListSettings> get_archive_chat_list_settings_object() const;
|
||||
|
||||
static void get_global_privacy_settings(Td *td,
|
||||
Promise<td_api::object_ptr<td_api::archiveChatListSettings>> &&promise);
|
||||
static void get_global_privacy_settings(Td *td, Promise<GlobalPrivacySettings> &&promise);
|
||||
|
||||
static void set_global_privacy_settings(Td *td, GlobalPrivacySettings settings, Promise<Unit> &&promise);
|
||||
};
|
||||
|
@ -6468,7 +6468,15 @@ void Td::on_request(uint64 id, const td_api::processChatFolderNewChats &request)
|
||||
void Td::on_request(uint64 id, const td_api::getArchiveChatListSettings &request) {
|
||||
CHECK_IS_USER();
|
||||
CREATE_REQUEST_PROMISE();
|
||||
GlobalPrivacySettings::get_global_privacy_settings(this, std::move(promise));
|
||||
auto query_promise =
|
||||
PromiseCreator::lambda([promise = std::move(promise)](Result<GlobalPrivacySettings> result) mutable {
|
||||
if (result.is_error()) {
|
||||
promise.set_error(result.move_as_error());
|
||||
} else {
|
||||
promise.set_value(result.ok().get_archive_chat_list_settings_object());
|
||||
}
|
||||
});
|
||||
GlobalPrivacySettings::get_global_privacy_settings(this, std::move(query_promise));
|
||||
}
|
||||
|
||||
void Td::on_request(uint64 id, td_api::setArchiveChatListSettings &request) {
|
||||
|
Loading…
Reference in New Issue
Block a user