mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-06 15:13:57 +02:00
Moved edit text messages from HistoryWidget to api_editing.
This commit is contained in:
parent
1c41808042
commit
63dff9ff91
3 changed files with 57 additions and 39 deletions
|
@ -192,5 +192,21 @@ mtpRequestId EditCaption(
|
|||
return EditMessage(item, caption, SendOptions(), done, fail);
|
||||
}
|
||||
|
||||
mtpRequestId EditTextMessage(
|
||||
not_null<HistoryItem*> item,
|
||||
const TextWithEntities &caption,
|
||||
SendOptions options,
|
||||
Fn<void(const MTPUpdates &, mtpRequestId requestId)> done,
|
||||
Fn<void(const RPCError &, mtpRequestId requestId)> fail) {
|
||||
const auto callback = [=](
|
||||
const auto &result,
|
||||
Fn<void()> applyUpdates,
|
||||
auto id) {
|
||||
applyUpdates();
|
||||
done(result, id);
|
||||
};
|
||||
return EditMessage(item, caption, options, callback, fail);
|
||||
}
|
||||
|
||||
|
||||
} // namespace Api
|
||||
|
|
|
@ -35,4 +35,11 @@ mtpRequestId EditCaption(
|
|||
Fn<void(const MTPUpdates &)> done,
|
||||
Fn<void(const RPCError &)> fail);
|
||||
|
||||
mtpRequestId EditTextMessage(
|
||||
not_null<HistoryItem*> item,
|
||||
const TextWithEntities &caption,
|
||||
SendOptions options,
|
||||
Fn<void(const MTPUpdates &, mtpRequestId requestId)> done,
|
||||
Fn<void(const RPCError &, mtpRequestId requestId)> fail);
|
||||
|
||||
} // namespace Api
|
||||
|
|
|
@ -7,6 +7,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
|||
*/
|
||||
#include "history/history_widget.h"
|
||||
|
||||
#include "api/api_editing.h"
|
||||
#include "api/api_bot.h"
|
||||
#include "api/api_sending.h"
|
||||
#include "api/api_text_entities.h"
|
||||
|
@ -3005,7 +3006,6 @@ void HistoryWidget::saveEditMsg() {
|
|||
if (webPageId == CancelledWebPageId) {
|
||||
sendFlags |= MTPmessages_EditMessage::Flag::f_no_webpage;
|
||||
}
|
||||
auto localEntities = Api::EntitiesToMTP(&session(), sending.entities);
|
||||
auto sentEntities = Api::EntitiesToMTP(
|
||||
&session(),
|
||||
sending.entities,
|
||||
|
@ -3016,17 +3016,11 @@ void HistoryWidget::saveEditMsg() {
|
|||
|
||||
const auto weak = Ui::MakeWeak(this);
|
||||
const auto history = _history;
|
||||
_saveEditMsgRequestId = history->session().api().request(
|
||||
MTPmessages_EditMessage(
|
||||
MTP_flags(sendFlags),
|
||||
_history->peer->input,
|
||||
MTP_int(_editMsgId),
|
||||
MTP_string(sending.text),
|
||||
MTPInputMedia(),
|
||||
MTPReplyMarkup(),
|
||||
sentEntities,
|
||||
MTP_int(0)
|
||||
)).done([history, weak](const MTPUpdates &result, mtpRequestId requestId) {
|
||||
_saveEditMsgRequestId = Api::EditTextMessage(
|
||||
session().data().message(_channel, _editMsgId),
|
||||
sending,
|
||||
Api::SendOptions(),
|
||||
[history, weak](const MTPUpdates &result, mtpRequestId requestId) {
|
||||
SaveEditMsgDone(history, result, requestId);
|
||||
if (const auto strong = weak.data()) {
|
||||
if (requestId == strong->_saveEditMsgRequestId) {
|
||||
|
@ -3034,7 +3028,8 @@ void HistoryWidget::saveEditMsg() {
|
|||
strong->cancelEdit();
|
||||
}
|
||||
}
|
||||
}).fail([history, weak](const RPCError &error, mtpRequestId requestId) {
|
||||
},
|
||||
[history, weak](const RPCError &error, mtpRequestId requestId) {
|
||||
SaveEditMsgFail(history, error, requestId);
|
||||
if (const auto strong = weak.data()) {
|
||||
if (requestId == strong->_saveEditMsgRequestId) {
|
||||
|
@ -3055,7 +3050,7 @@ void HistoryWidget::saveEditMsg() {
|
|||
}
|
||||
strong->update();
|
||||
}
|
||||
}).send();
|
||||
});
|
||||
}
|
||||
|
||||
void HistoryWidget::SaveEditMsgDone(
|
||||
|
|
Loading…
Add table
Reference in a new issue