Use self as host for rich editor media.

Fixes #31034.
This commit is contained in:
John Preston
2026-07-24 16:54:19 +04:00
parent eedad95835
commit bfdf2ae403
3 changed files with 5 additions and 9 deletions
@@ -4049,7 +4049,7 @@ std::optional<::Data::Draft> ArticleSession::prepareRichDraftForAutosave() const
_session,
*richMessage,
SerializeInputRichMessageMode::Draft);
if (serialized.status == SerializeInputRichMessageStatus::Failed) {
if (serialized.status != SerializeInputRichMessageStatus::Success) {
return std::nullopt;
}
draft.richMessage = std::move(richMessage);
+1 -8
View File
@@ -1299,14 +1299,7 @@ auto CachedPageMediaRuntime::hostedMediaHost(
}
return _hostedMediaHost;
}
if (!_session->data().peerLoaded(PeerData::kServiceNotificationsId)) {
return nullptr;
}
const auto history = _session->data().history(
PeerData::kServiceNotificationsId);
if (!history->peer->isUser()) {
return nullptr;
}
const auto history = _session->data().history(_session->user());
if (!_hostedMediaHost) {
_hostedMediaHost
= std::make_shared<Markdown::IvHistoryViewMediaHost>(
@@ -1718,6 +1718,9 @@ SerializeInputRichMessageResult SerializeInputRichMessage(
if (mode == SerializeInputRichMessageMode::FinalSubmit
&& !normalizedBlocks.hasRealContent) {
return EmptySerializeInputRichMessage();
} else if (mode == SerializeInputRichMessageMode::Draft
&& blocks->isEmpty()) {
return EmptySerializeInputRichMessage();
}
auto photos = QVector<MTPInputPhoto>();
photos.reserve(context.photos.size());