Don't pass redundant MTPUpdates arguments.
This commit is contained in:
		
							parent
							
								
									d891a5344a
								
							
						
					
					
						commit
						b7cc2e9894
					
				
					 8 changed files with 78 additions and 60 deletions
				
			
		| 
						 | 
					@ -27,13 +27,19 @@ using namespace rpl::details;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
template <typename T>
 | 
					template <typename T>
 | 
				
			||||||
constexpr auto WithId =
 | 
					constexpr auto WithId =
 | 
				
			||||||
	is_callable_plain_v<T, const MTPUpdates &, Fn<void()>, mtpRequestId>;
 | 
						is_callable_plain_v<T, Fn<void()>, mtpRequestId>;
 | 
				
			||||||
template <typename T>
 | 
					template <typename T>
 | 
				
			||||||
constexpr auto WithoutId =
 | 
					constexpr auto WithoutId =
 | 
				
			||||||
	is_callable_plain_v<T, const MTPUpdates &, Fn<void()>>;
 | 
						is_callable_plain_v<T, Fn<void()>>;
 | 
				
			||||||
template <typename T>
 | 
					template <typename T>
 | 
				
			||||||
constexpr auto WithoutCallback =
 | 
					constexpr auto WithoutCallback =
 | 
				
			||||||
	is_callable_plain_v<T, const MTPUpdates &>;
 | 
						is_callable_plain_v<T>;
 | 
				
			||||||
 | 
					template <typename T>
 | 
				
			||||||
 | 
					constexpr auto ErrorWithId =
 | 
				
			||||||
 | 
						is_callable_plain_v<T, QString, mtpRequestId>;
 | 
				
			||||||
 | 
					template <typename T>
 | 
				
			||||||
 | 
					constexpr auto ErrorWithoutId =
 | 
				
			||||||
 | 
						is_callable_plain_v<T, QString>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
template <typename DoneCallback, typename FailCallback>
 | 
					template <typename DoneCallback, typename FailCallback>
 | 
				
			||||||
mtpRequestId EditMessage(
 | 
					mtpRequestId EditMessage(
 | 
				
			||||||
| 
						 | 
					@ -93,22 +99,30 @@ mtpRequestId EditMessage(
 | 
				
			||||||
		const auto apply = [=] { api->applyUpdates(result); };
 | 
							const auto apply = [=] { api->applyUpdates(result); };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if constexpr (WithId<DoneCallback>) {
 | 
							if constexpr (WithId<DoneCallback>) {
 | 
				
			||||||
			done(result, apply, requestId);
 | 
								done(apply, requestId);
 | 
				
			||||||
		} else if constexpr (WithoutId<DoneCallback>) {
 | 
							} else if constexpr (WithoutId<DoneCallback>) {
 | 
				
			||||||
			done(result, apply);
 | 
								done(apply);
 | 
				
			||||||
		} else if constexpr (WithoutCallback<DoneCallback>) {
 | 
							} else if constexpr (WithoutCallback<DoneCallback>) {
 | 
				
			||||||
			done(result);
 | 
								done();
 | 
				
			||||||
			apply();
 | 
								apply();
 | 
				
			||||||
		} else {
 | 
							} else {
 | 
				
			||||||
			apply();
 | 
								t_bad_callback(done);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if (updateRecentStickers) {
 | 
							if (updateRecentStickers) {
 | 
				
			||||||
			api->requestRecentStickersForce(true);
 | 
								api->requestRecentStickersForce(true);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}).fail(
 | 
						}).fail([=](const MTP::Error &error, mtpRequestId requestId) {
 | 
				
			||||||
		fail
 | 
							if constexpr (ErrorWithId<FailCallback>) {
 | 
				
			||||||
	).send();
 | 
								fail(error.type(), requestId);
 | 
				
			||||||
 | 
							} else if constexpr (ErrorWithoutId<FailCallback>) {
 | 
				
			||||||
 | 
								fail(error.type());
 | 
				
			||||||
 | 
							} else if constexpr (WithoutCallback<FailCallback>) {
 | 
				
			||||||
 | 
								fail();
 | 
				
			||||||
 | 
							} else {
 | 
				
			||||||
 | 
								t_bad_callback(fail);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}).send();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
template <typename DoneCallback, typename FailCallback>
 | 
					template <typename DoneCallback, typename FailCallback>
 | 
				
			||||||
| 
						 | 
					@ -132,7 +146,7 @@ void EditMessageWithUploadedMedia(
 | 
				
			||||||
		not_null<HistoryItem*> item,
 | 
							not_null<HistoryItem*> item,
 | 
				
			||||||
		SendOptions options,
 | 
							SendOptions options,
 | 
				
			||||||
		MTPInputMedia media) {
 | 
							MTPInputMedia media) {
 | 
				
			||||||
	const auto done = [=](const auto &result, Fn<void()> applyUpdates) {
 | 
						const auto done = [=](Fn<void()> applyUpdates) {
 | 
				
			||||||
		if (item) {
 | 
							if (item) {
 | 
				
			||||||
			item->clearSavedMedia();
 | 
								item->clearSavedMedia();
 | 
				
			||||||
			item->setIsLocalUpdateMedia(true);
 | 
								item->setIsLocalUpdateMedia(true);
 | 
				
			||||||
| 
						 | 
					@ -140,11 +154,10 @@ void EditMessageWithUploadedMedia(
 | 
				
			||||||
			item->setIsLocalUpdateMedia(false);
 | 
								item->setIsLocalUpdateMedia(false);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
	const auto fail = [=](const MTP::Error &error) {
 | 
						const auto fail = [=](const QString &error) {
 | 
				
			||||||
		const auto err = error.type();
 | 
					 | 
				
			||||||
		const auto session = &item->history()->session();
 | 
							const auto session = &item->history()->session();
 | 
				
			||||||
		const auto notModified = (err == u"MESSAGE_NOT_MODIFIED"_q);
 | 
							const auto notModified = (error == u"MESSAGE_NOT_MODIFIED"_q);
 | 
				
			||||||
		const auto mediaInvalid = (err == u"MEDIA_NEW_INVALID"_q);
 | 
							const auto mediaInvalid = (error == u"MEDIA_NEW_INVALID"_q);
 | 
				
			||||||
		if (notModified || mediaInvalid) {
 | 
							if (notModified || mediaInvalid) {
 | 
				
			||||||
			item->returnSavedMedia();
 | 
								item->returnSavedMedia();
 | 
				
			||||||
			session->data().sendHistoryChangeNotifications();
 | 
								session->data().sendHistoryChangeNotifications();
 | 
				
			||||||
| 
						 | 
					@ -200,8 +213,8 @@ mtpRequestId EditCaption(
 | 
				
			||||||
		not_null<HistoryItem*> item,
 | 
							not_null<HistoryItem*> item,
 | 
				
			||||||
		const TextWithEntities &caption,
 | 
							const TextWithEntities &caption,
 | 
				
			||||||
		SendOptions options,
 | 
							SendOptions options,
 | 
				
			||||||
		Fn<void(const MTPUpdates &)> done,
 | 
							Fn<void()> done,
 | 
				
			||||||
		Fn<void(const MTP::Error &)> fail) {
 | 
							Fn<void(const QString &)> fail) {
 | 
				
			||||||
	return EditMessage(item, caption, options, done, fail);
 | 
						return EditMessage(item, caption, options, done, fail);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -209,17 +222,13 @@ mtpRequestId EditTextMessage(
 | 
				
			||||||
		not_null<HistoryItem*> item,
 | 
							not_null<HistoryItem*> item,
 | 
				
			||||||
		const TextWithEntities &caption,
 | 
							const TextWithEntities &caption,
 | 
				
			||||||
		SendOptions options,
 | 
							SendOptions options,
 | 
				
			||||||
		Fn<void(const MTPUpdates &, mtpRequestId requestId)> done,
 | 
							Fn<void(mtpRequestId requestId)> done,
 | 
				
			||||||
		Fn<void(const MTP::Error &, mtpRequestId requestId)> fail) {
 | 
							Fn<void(const QString &, mtpRequestId requestId)> fail) {
 | 
				
			||||||
	const auto callback = [=](
 | 
						const auto callback = [=](Fn<void()> applyUpdates, mtpRequestId id) {
 | 
				
			||||||
			const auto &result,
 | 
					 | 
				
			||||||
			Fn<void()> applyUpdates,
 | 
					 | 
				
			||||||
			auto id) {
 | 
					 | 
				
			||||||
		applyUpdates();
 | 
							applyUpdates();
 | 
				
			||||||
		done(result, id);
 | 
							done(id);
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
	return EditMessage(item, caption, options, callback, fail);
 | 
						return EditMessage(item, caption, options, callback, fail);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
} // namespace Api
 | 
					} // namespace Api
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -42,14 +42,14 @@ mtpRequestId EditCaption(
 | 
				
			||||||
	not_null<HistoryItem*> item,
 | 
						not_null<HistoryItem*> item,
 | 
				
			||||||
	const TextWithEntities &caption,
 | 
						const TextWithEntities &caption,
 | 
				
			||||||
	SendOptions options,
 | 
						SendOptions options,
 | 
				
			||||||
	Fn<void(const MTPUpdates &)> done,
 | 
						Fn<void()> done,
 | 
				
			||||||
	Fn<void(const MTP::Error &)> fail);
 | 
						Fn<void(const QString &)> fail);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
mtpRequestId EditTextMessage(
 | 
					mtpRequestId EditTextMessage(
 | 
				
			||||||
	not_null<HistoryItem*> item,
 | 
						not_null<HistoryItem*> item,
 | 
				
			||||||
	const TextWithEntities &caption,
 | 
						const TextWithEntities &caption,
 | 
				
			||||||
	SendOptions options,
 | 
						SendOptions options,
 | 
				
			||||||
	Fn<void(const MTPUpdates &, mtpRequestId requestId)> done,
 | 
						Fn<void(mtpRequestId requestId)> done,
 | 
				
			||||||
	Fn<void(const MTP::Error &, mtpRequestId requestId)> fail);
 | 
						Fn<void(const QString &error, mtpRequestId requestId)> fail);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
} // namespace Api
 | 
					} // namespace Api
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -438,14 +438,22 @@ void ApiWrap::sendMessageFail(
 | 
				
			||||||
		not_null<PeerData*> peer,
 | 
							not_null<PeerData*> peer,
 | 
				
			||||||
		uint64 randomId,
 | 
							uint64 randomId,
 | 
				
			||||||
		FullMsgId itemId) {
 | 
							FullMsgId itemId) {
 | 
				
			||||||
 | 
						sendMessageFail(error.type(), peer, randomId, itemId);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void ApiWrap::sendMessageFail(
 | 
				
			||||||
 | 
							const QString &error,
 | 
				
			||||||
 | 
							not_null<PeerData*> peer,
 | 
				
			||||||
 | 
							uint64 randomId,
 | 
				
			||||||
 | 
							FullMsgId itemId) {
 | 
				
			||||||
	const auto show = ShowForPeer(peer);
 | 
						const auto show = ShowForPeer(peer);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (error.type() == qstr("PEER_FLOOD")) {
 | 
						if (error == qstr("PEER_FLOOD")) {
 | 
				
			||||||
		show->showBox(
 | 
							show->showBox(
 | 
				
			||||||
			Ui::MakeInformBox(
 | 
								Ui::MakeInformBox(
 | 
				
			||||||
				PeerFloodErrorText(&session(), PeerFloodType::Send)),
 | 
									PeerFloodErrorText(&session(), PeerFloodType::Send)),
 | 
				
			||||||
			Ui::LayerOption::CloseOther);
 | 
								Ui::LayerOption::CloseOther);
 | 
				
			||||||
	} else if (error.type() == qstr("USER_BANNED_IN_CHANNEL")) {
 | 
						} else if (error == qstr("USER_BANNED_IN_CHANNEL")) {
 | 
				
			||||||
		const auto link = Ui::Text::Link(
 | 
							const auto link = Ui::Text::Link(
 | 
				
			||||||
			tr::lng_cant_more_info(tr::now),
 | 
								tr::lng_cant_more_info(tr::now),
 | 
				
			||||||
			session().createInternalLinkFull(qsl("spambot")));
 | 
								session().createInternalLinkFull(qsl("spambot")));
 | 
				
			||||||
| 
						 | 
					@ -457,9 +465,9 @@ void ApiWrap::sendMessageFail(
 | 
				
			||||||
					link,
 | 
										link,
 | 
				
			||||||
					Ui::Text::WithEntities)),
 | 
										Ui::Text::WithEntities)),
 | 
				
			||||||
			Ui::LayerOption::CloseOther);
 | 
								Ui::LayerOption::CloseOther);
 | 
				
			||||||
	} else if (error.type().startsWith(qstr("SLOWMODE_WAIT_"))) {
 | 
						} else if (error.startsWith(qstr("SLOWMODE_WAIT_"))) {
 | 
				
			||||||
		const auto chop = qstr("SLOWMODE_WAIT_").size();
 | 
							const auto chop = qstr("SLOWMODE_WAIT_").size();
 | 
				
			||||||
		const auto left = base::StringViewMid(error.type(), chop).toInt();
 | 
							const auto left = base::StringViewMid(error, chop).toInt();
 | 
				
			||||||
		if (const auto channel = peer->asChannel()) {
 | 
							if (const auto channel = peer->asChannel()) {
 | 
				
			||||||
			const auto seconds = channel->slowmodeSeconds();
 | 
								const auto seconds = channel->slowmodeSeconds();
 | 
				
			||||||
			if (seconds >= left) {
 | 
								if (seconds >= left) {
 | 
				
			||||||
| 
						 | 
					@ -469,7 +477,7 @@ void ApiWrap::sendMessageFail(
 | 
				
			||||||
				requestFullPeer(peer);
 | 
									requestFullPeer(peer);
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	} else if (error.type() == qstr("SCHEDULE_STATUS_PRIVATE")) {
 | 
						} else if (error == qstr("SCHEDULE_STATUS_PRIVATE")) {
 | 
				
			||||||
		auto &scheduled = _session->data().scheduledMessages();
 | 
							auto &scheduled = _session->data().scheduledMessages();
 | 
				
			||||||
		Assert(peer->isUser());
 | 
							Assert(peer->isUser());
 | 
				
			||||||
		if (const auto item = scheduled.lookupItem(peer->id, itemId.msg)) {
 | 
							if (const auto item = scheduled.lookupItem(peer->id, itemId.msg)) {
 | 
				
			||||||
| 
						 | 
					@ -478,7 +486,7 @@ void ApiWrap::sendMessageFail(
 | 
				
			||||||
				Ui::MakeInformBox(tr::lng_cant_do_this()),
 | 
									Ui::MakeInformBox(tr::lng_cant_do_this()),
 | 
				
			||||||
				Ui::LayerOption::CloseOther);
 | 
									Ui::LayerOption::CloseOther);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	} else if (error.type() == qstr("CHAT_FORWARDS_RESTRICTED")) {
 | 
						} else if (error == qstr("CHAT_FORWARDS_RESTRICTED")) {
 | 
				
			||||||
		if (show->valid()) {
 | 
							if (show->valid()) {
 | 
				
			||||||
			Ui::ShowMultilineToast({
 | 
								Ui::ShowMultilineToast({
 | 
				
			||||||
				.parentOverride = show->toastParent(),
 | 
									.parentOverride = show->toastParent(),
 | 
				
			||||||
| 
						 | 
					@ -489,7 +497,7 @@ void ApiWrap::sendMessageFail(
 | 
				
			||||||
				.duration = kJoinErrorDuration
 | 
									.duration = kJoinErrorDuration
 | 
				
			||||||
			});
 | 
								});
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	} else if (error.type() == qstr("PREMIUM_ACCOUNT_REQUIRED")) {
 | 
						} else if (error == qstr("PREMIUM_ACCOUNT_REQUIRED")) {
 | 
				
			||||||
		Settings::ShowPremium(&session(), "premium_stickers");
 | 
							Settings::ShowPremium(&session(), "premium_stickers");
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if (const auto item = _session->data().message(itemId)) {
 | 
						if (const auto item = _session->data().message(itemId)) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -343,6 +343,11 @@ public:
 | 
				
			||||||
		not_null<PeerData*> peer,
 | 
							not_null<PeerData*> peer,
 | 
				
			||||||
		uint64 randomId = 0,
 | 
							uint64 randomId = 0,
 | 
				
			||||||
		FullMsgId itemId = FullMsgId());
 | 
							FullMsgId itemId = FullMsgId());
 | 
				
			||||||
 | 
						void sendMessageFail(
 | 
				
			||||||
 | 
							const QString &error,
 | 
				
			||||||
 | 
							not_null<PeerData*> peer,
 | 
				
			||||||
 | 
							uint64 randomId = 0,
 | 
				
			||||||
 | 
							FullMsgId itemId = FullMsgId());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	void reloadContactSignupSilent();
 | 
						void reloadContactSignupSilent();
 | 
				
			||||||
	rpl::producer<bool> contactSignupSilent() const;
 | 
						rpl::producer<bool> contactSignupSilent() const;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -723,20 +723,19 @@ void EditCaptionBox::save() {
 | 
				
			||||||
		return;
 | 
							return;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const auto done = crl::guard(this, [=](const MTPUpdates &updates) {
 | 
						const auto done = crl::guard(this, [=] {
 | 
				
			||||||
		_saveRequestId = 0;
 | 
							_saveRequestId = 0;
 | 
				
			||||||
		closeBox();
 | 
							closeBox();
 | 
				
			||||||
	});
 | 
						});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const auto fail = crl::guard(this, [=](const MTP::Error &error) {
 | 
						const auto fail = crl::guard(this, [=](const QString &error) {
 | 
				
			||||||
		_saveRequestId = 0;
 | 
							_saveRequestId = 0;
 | 
				
			||||||
		const auto &type = error.type();
 | 
							if (ranges::contains(Api::kDefaultEditMessagesErrors, error)) {
 | 
				
			||||||
		if (ranges::contains(Api::kDefaultEditMessagesErrors, type)) {
 | 
					 | 
				
			||||||
			_error = tr::lng_edit_error(tr::now);
 | 
								_error = tr::lng_edit_error(tr::now);
 | 
				
			||||||
			update();
 | 
								update();
 | 
				
			||||||
		} else if (type == u"MESSAGE_NOT_MODIFIED"_q) {
 | 
							} else if (error == u"MESSAGE_NOT_MODIFIED"_q) {
 | 
				
			||||||
			closeBox();
 | 
								closeBox();
 | 
				
			||||||
		} else if (type == u"MESSAGE_EMPTY"_q) {
 | 
							} else if (error == u"MESSAGE_EMPTY"_q) {
 | 
				
			||||||
			_field->setFocus();
 | 
								_field->setFocus();
 | 
				
			||||||
			_field->showError();
 | 
								_field->showError();
 | 
				
			||||||
			update();
 | 
								update();
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3662,7 +3662,7 @@ void HistoryWidget::saveEditMsg() {
 | 
				
			||||||
	const auto weak = Ui::MakeWeak(this);
 | 
						const auto weak = Ui::MakeWeak(this);
 | 
				
			||||||
	const auto history = _history;
 | 
						const auto history = _history;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const auto done = [=](const MTPUpdates &result, mtpRequestId requestId) {
 | 
						const auto done = [=](mtpRequestId requestId) {
 | 
				
			||||||
		crl::guard(weak, [=] {
 | 
							crl::guard(weak, [=] {
 | 
				
			||||||
			if (requestId == _saveEditMsgRequestId) {
 | 
								if (requestId == _saveEditMsgRequestId) {
 | 
				
			||||||
				_saveEditMsgRequestId = 0;
 | 
									_saveEditMsgRequestId = 0;
 | 
				
			||||||
| 
						 | 
					@ -3677,7 +3677,7 @@ void HistoryWidget::saveEditMsg() {
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const auto fail = [=](const MTP::Error &error, mtpRequestId requestId) {
 | 
						const auto fail = [=](const QString &error, mtpRequestId requestId) {
 | 
				
			||||||
		if (const auto editDraft = history->localEditDraft()) {
 | 
							if (const auto editDraft = history->localEditDraft()) {
 | 
				
			||||||
			if (editDraft->saveRequestId == requestId) {
 | 
								if (editDraft->saveRequestId == requestId) {
 | 
				
			||||||
				editDraft->saveRequestId = 0;
 | 
									editDraft->saveRequestId = 0;
 | 
				
			||||||
| 
						 | 
					@ -3687,12 +3687,11 @@ void HistoryWidget::saveEditMsg() {
 | 
				
			||||||
			if (requestId == _saveEditMsgRequestId) {
 | 
								if (requestId == _saveEditMsgRequestId) {
 | 
				
			||||||
				_saveEditMsgRequestId = 0;
 | 
									_saveEditMsgRequestId = 0;
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			const auto &err = error.type();
 | 
								if (ranges::contains(Api::kDefaultEditMessagesErrors, error)) {
 | 
				
			||||||
			if (ranges::contains(Api::kDefaultEditMessagesErrors, err)) {
 | 
					 | 
				
			||||||
				controller()->show(Ui::MakeInformBox(tr::lng_edit_error()));
 | 
									controller()->show(Ui::MakeInformBox(tr::lng_edit_error()));
 | 
				
			||||||
			} else if (err == u"MESSAGE_NOT_MODIFIED"_q) {
 | 
								} else if (error == u"MESSAGE_NOT_MODIFIED"_q) {
 | 
				
			||||||
				cancelEdit();
 | 
									cancelEdit();
 | 
				
			||||||
			} else if (err == u"MESSAGE_EMPTY"_q) {
 | 
								} else if (error == u"MESSAGE_EMPTY"_q) {
 | 
				
			||||||
				_field->selectAll();
 | 
									_field->selectAll();
 | 
				
			||||||
				_field->setFocus();
 | 
									_field->setFocus();
 | 
				
			||||||
			} else {
 | 
								} else {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1074,24 +1074,23 @@ void RepliesWidget::edit(
 | 
				
			||||||
		session().api().request(base::take(*saveEditMsgRequestId)).cancel();
 | 
							session().api().request(base::take(*saveEditMsgRequestId)).cancel();
 | 
				
			||||||
	});
 | 
						});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const auto done = [=](const MTPUpdates &result, mtpRequestId requestId) {
 | 
						const auto done = [=](mtpRequestId requestId) {
 | 
				
			||||||
		if (requestId == *saveEditMsgRequestId) {
 | 
							if (requestId == *saveEditMsgRequestId) {
 | 
				
			||||||
			*saveEditMsgRequestId = 0;
 | 
								*saveEditMsgRequestId = 0;
 | 
				
			||||||
			_composeControls->cancelEditMessage();
 | 
								_composeControls->cancelEditMessage();
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const auto fail = [=](const MTP::Error &error, mtpRequestId requestId) {
 | 
						const auto fail = [=](const QString &error, mtpRequestId requestId) {
 | 
				
			||||||
		if (requestId == *saveEditMsgRequestId) {
 | 
							if (requestId == *saveEditMsgRequestId) {
 | 
				
			||||||
			*saveEditMsgRequestId = 0;
 | 
								*saveEditMsgRequestId = 0;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		const auto &err = error.type();
 | 
							if (ranges::contains(Api::kDefaultEditMessagesErrors, error)) {
 | 
				
			||||||
		if (ranges::contains(Api::kDefaultEditMessagesErrors, err)) {
 | 
					 | 
				
			||||||
			controller()->show(Ui::MakeInformBox(tr::lng_edit_error()));
 | 
								controller()->show(Ui::MakeInformBox(tr::lng_edit_error()));
 | 
				
			||||||
		} else if (err == u"MESSAGE_NOT_MODIFIED"_q) {
 | 
							} else if (error == u"MESSAGE_NOT_MODIFIED"_q) {
 | 
				
			||||||
			_composeControls->cancelEditMessage();
 | 
								_composeControls->cancelEditMessage();
 | 
				
			||||||
		} else if (err == u"MESSAGE_EMPTY"_q) {
 | 
							} else if (error == u"MESSAGE_EMPTY"_q) {
 | 
				
			||||||
			doSetInnerFocus();
 | 
								doSetInnerFocus();
 | 
				
			||||||
		} else {
 | 
							} else {
 | 
				
			||||||
			controller()->show(Ui::MakeInformBox(tr::lng_edit_error()));
 | 
								controller()->show(Ui::MakeInformBox(tr::lng_edit_error()));
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -688,24 +688,23 @@ void ScheduledWidget::edit(
 | 
				
			||||||
		session().api().request(base::take(*saveEditMsgRequestId)).cancel();
 | 
							session().api().request(base::take(*saveEditMsgRequestId)).cancel();
 | 
				
			||||||
	});
 | 
						});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const auto done = [=](const MTPUpdates &result, mtpRequestId requestId) {
 | 
						const auto done = [=](mtpRequestId requestId) {
 | 
				
			||||||
		if (requestId == *saveEditMsgRequestId) {
 | 
							if (requestId == *saveEditMsgRequestId) {
 | 
				
			||||||
			*saveEditMsgRequestId = 0;
 | 
								*saveEditMsgRequestId = 0;
 | 
				
			||||||
			_composeControls->cancelEditMessage();
 | 
								_composeControls->cancelEditMessage();
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const auto fail = [=](const MTP::Error &error, mtpRequestId requestId) {
 | 
						const auto fail = [=](const QString &error, mtpRequestId requestId) {
 | 
				
			||||||
		if (requestId == *saveEditMsgRequestId) {
 | 
							if (requestId == *saveEditMsgRequestId) {
 | 
				
			||||||
			*saveEditMsgRequestId = 0;
 | 
								*saveEditMsgRequestId = 0;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		const auto &err = error.type();
 | 
							if (ranges::contains(Api::kDefaultEditMessagesErrors, error)) {
 | 
				
			||||||
		if (ranges::contains(Api::kDefaultEditMessagesErrors, err)) {
 | 
					 | 
				
			||||||
			controller()->show(Ui::MakeInformBox(tr::lng_edit_error()));
 | 
								controller()->show(Ui::MakeInformBox(tr::lng_edit_error()));
 | 
				
			||||||
		} else if (err == u"MESSAGE_NOT_MODIFIED"_q) {
 | 
							} else if (error == u"MESSAGE_NOT_MODIFIED"_q) {
 | 
				
			||||||
			_composeControls->cancelEditMessage();
 | 
								_composeControls->cancelEditMessage();
 | 
				
			||||||
		} else if (err == u"MESSAGE_EMPTY"_q) {
 | 
							} else if (error == u"MESSAGE_EMPTY"_q) {
 | 
				
			||||||
			_composeControls->focus();
 | 
								_composeControls->focus();
 | 
				
			||||||
		} else {
 | 
							} else {
 | 
				
			||||||
			controller()->show(Ui::MakeInformBox(tr::lng_edit_error()));
 | 
								controller()->show(Ui::MakeInformBox(tr::lng_edit_error()));
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue