diff --git a/Telegram/SourceFiles/api/api_editing.cpp b/Telegram/SourceFiles/api/api_editing.cpp index 3605b9dc0..0bd4835e7 100644 --- a/Telegram/SourceFiles/api/api_editing.cpp +++ b/Telegram/SourceFiles/api/api_editing.cpp @@ -60,7 +60,7 @@ mtpRequestId EditMessage( | ((media && inputMedia.has_value()) ? MTPmessages_EditMessage::Flag::f_media : emptyFlag) - | ((!media || !media->webpage()) + | (options.removeWebPageId ? MTPmessages_EditMessage::Flag::f_no_webpage : emptyFlag) | (!sentEntities.v.isEmpty() diff --git a/Telegram/SourceFiles/history/history_widget.cpp b/Telegram/SourceFiles/history/history_widget.cpp index 72781c973..d6edcd71a 100644 --- a/Telegram/SourceFiles/history/history_widget.cpp +++ b/Telegram/SourceFiles/history/history_widget.cpp @@ -3002,24 +3002,15 @@ void HistoryWidget::saveEditMsg() { return; } - auto sendFlags = MTPmessages_EditMessage::Flag::f_message | 0; - if (webPageId == CancelledWebPageId) { - sendFlags |= MTPmessages_EditMessage::Flag::f_no_webpage; - } - auto sentEntities = Api::EntitiesToMTP( - &session(), - sending.entities, - Api::ConvertOption::SkipLocal); - if (!sentEntities.v.isEmpty()) { - sendFlags |= MTPmessages_EditMessage::Flag::f_entities; - } + auto options = Api::SendOptions(); + options.removeWebPageId = (webPageId == CancelledWebPageId); const auto weak = Ui::MakeWeak(this); const auto history = _history; _saveEditMsgRequestId = Api::EditTextMessage( session().data().message(_channel, _editMsgId), sending, - Api::SendOptions(), + options, [history, weak](const MTPUpdates &result, mtpRequestId requestId) { SaveEditMsgDone(history, result, requestId); if (const auto strong = weak.data()) { diff --git a/Telegram/SourceFiles/history/view/history_view_context_menu.cpp b/Telegram/SourceFiles/history/view/history_view_context_menu.cpp index 7cd79beba..0dd10bb9f 100644 --- a/Telegram/SourceFiles/history/view/history_view_context_menu.cpp +++ b/Telegram/SourceFiles/history/view/history_view_context_menu.cpp @@ -415,6 +415,9 @@ bool AddRescheduleMessageAction( return; } const auto callback = [=](Api::SendOptions options) { + if (!item->media() || !item->media()->webpage()) { + options.removeWebPageId = true; + } Api::RescheduleMessage(item, options); };