2
0
mirror of https://github.com/telegramdesktop/tdesktop synced 2025-08-22 02:07:24 +00:00

Use Api::ParseTextWithEntities more.

This commit is contained in:
John Preston 2025-08-12 16:10:35 +04:00
parent d60bfa238f
commit 1b4ea2e9c6
6 changed files with 23 additions and 53 deletions

View File

@ -960,12 +960,9 @@ std::optional<Data::SavedStarGift> FromTL(
| ranges::to_vector)
: std::vector<int>()),
.message = (data.vmessage()
? TextWithEntities{
.text = qs(data.vmessage()->data().vtext()),
.entities = Api::EntitiesFromMTP(
session,
data.vmessage()->data().ventities().v),
}
? Api::ParseTextWithEntities(
session,
*data.vmessage())
: TextWithEntities()),
.starsConverted = int64(data.vconvert_stars().value_or_empty()),
.starsUpgradedBySender = int64(

View File

@ -248,12 +248,9 @@ void TranslateBox(
showText(
Ui::Text::Italic(tr::lng_translate_box_error(tr::now)));
} else {
showText(TextWithEntities{
.text = qs(list.front().data().vtext()),
.entities = Api::EntitiesFromMTP(
&peer->session(),
list.front().data().ventities().v),
});
showText(Api::ParseTextWithEntities(
&peer->session(),
list.front()));
}
}).fail([=](const MTP::Error &error) {
showText(

View File

@ -70,12 +70,9 @@ bool PollData::closeByTimer() {
bool PollData::applyChanges(const MTPDpoll &poll) {
Expects(poll.vid().v == id);
const auto newQuestion = TextWithEntities{
.text = qs(poll.vquestion().data().vtext()),
.entities = Api::EntitiesFromMTP(
&session(),
poll.vquestion().data().ventities().v),
};
const auto newQuestion = Api::ParseTextWithEntities(
&session(),
poll.vquestion());
const auto newFlags = (poll.is_closed() ? Flag::Closed : Flag(0))
| (poll.is_public_voters() ? Flag::PublicVotes : Flag(0))
| (poll.is_multiple_choice() ? Flag::MultiChoice : Flag(0))
@ -88,12 +85,9 @@ bool PollData::applyChanges(const MTPDpoll &poll) {
return data.match([&](const MTPDpollAnswer &answer) {
auto result = PollAnswer();
result.option = answer.voption().v;
result.text = TextWithEntities{
.text = qs(answer.vtext().data().vtext()),
.entities = Api::EntitiesFromMTP(
&session(),
answer.vtext().data().ventities().v),
};
result.text = Api::ParseTextWithEntities(
&session(),
answer.vtext());
return result;
});
}) | ranges::views::take(

View File

@ -45,12 +45,9 @@ Main::Session &TodoListData::session() const {
}
bool TodoListData::applyChanges(const MTPDtodoList &todolist) {
const auto newTitle = TextWithEntities{
.text = qs(todolist.vtitle().data().vtext()),
.entities = Api::EntitiesFromMTP(
&session(),
todolist.vtitle().data().ventities().v),
};
const auto newTitle = Api::ParseTextWithEntities(
&session(),
todolist.vtitle());
const auto newFlags = (todolist.is_others_can_append()
? Flag::OthersCanAppend
: Flag())
@ -222,12 +219,7 @@ TodoListItem TodoListItemFromMTP(
const MTPTodoItem &item) {
const auto &data = item.data();
return {
.text = TextWithEntities{
.text = qs(data.vtitle().data().vtext()),
.entities = Api::EntitiesFromMTP(
session,
data.vtitle().data().ventities().v),
},
.text = Api::ParseTextWithEntities(session, data.vtitle()),
.id = data.vid().v,
};
}

View File

@ -6295,12 +6295,9 @@ void HistoryItem::applyAction(const MTPMessageAction &action) {
Data::GiftCode{
.slug = qs(data.vslug()),
.message = (data.vmessage()
? TextWithEntities{
.text = qs(data.vmessage()->data().vtext()),
.entities = Api::EntitiesFromMTP(
&history()->session(),
data.vmessage()->data().ventities().v),
}
? Api::ParseTextWithEntities(
&history()->session(),
*data.vmessage())
: TextWithEntities()),
.channel = (boostedId
? history()->owner().channel(boostedId).get()
@ -6347,12 +6344,9 @@ void HistoryItem::applyAction(const MTPMessageAction &action) {
using Fields = Data::GiftCode;
auto fields = Fields{
.message = (data.vmessage()
? TextWithEntities{
.text = qs(data.vmessage()->data().vtext()),
.entities = Api::EntitiesFromMTP(
&history()->session(),
data.vmessage()->data().ventities().v),
}
? Api::ParseTextWithEntities(
&history()->session(),
*data.vmessage())
: TextWithEntities()),
.channel = ((service && peerIsChannel(to))
? history()->owner().channel(peerToChannel(to)).get()

View File

@ -1336,11 +1336,7 @@ MessageFactcheck FromMTP(
}
const auto &data = factcheck->data();
if (const auto text = data.vtext()) {
const auto &data = text->data();
result.text = {
qs(data.vtext()),
Api::EntitiesFromMTP(session, data.ventities().v),
};
result.text = Api::ParseTextWithEntities(session, *text);
}
if (const auto country = data.vcountry()) {
result.country = qs(country->v);