Special phrase for a colored emoji status.

This commit is contained in:
John Preston 2022-09-06 12:32:33 +04:00
parent 06ec574543
commit 1877786707
2 changed files with 19 additions and 9 deletions

View File

@ -1716,6 +1716,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
"lng_premium_subscribe_button" = "Subscribe for {cost} per month";
"lng_premium_emoji_status_title" = "{user} set this emoji from {link} as their current status.";
"lng_premium_emoji_status_title_colored" = "{user} set this emoji as their current status.";
"lng_premium_emoji_status_about" = "Emoji status is a premium feature. Other features included in **Telegram Premium**:";
"lng_premium_emoji_status_button" = "Unlock Emoji Status";

View File

@ -821,12 +821,15 @@ void TopBarUser::updateTitle(
if (!stickerInfo) {
return;
}
const auto &sets = document->owner().stickers().sets();
const auto it = sets.find(stickerInfo->set.id);
const auto owner = &document->owner();
const auto &sets = owner->stickers().sets();
const auto setId = stickerInfo->set.id;
const auto it = sets.find(setId);
if (it == sets.cend()) {
return;
}
const auto set = it->second.get();
const auto coloredId = owner->customEmojiManager().coloredSetId();
const auto text = (set->thumbnailDocumentId ? QChar('0') : QChar())
+ set->title;
@ -837,13 +840,19 @@ void TopBarUser::updateTitle(
{ EntityType::CustomEmoji, 0, 1, entityEmojiData },
Ui::Text::Link(text, linkIndex).entities.front(),
};
auto title = tr::lng_premium_emoji_status_title(
tr::now,
lt_user,
std::move(name),
lt_link,
{ .text = text, .entities = entities, },
Ui::Text::WithEntities);
auto title = (setId == coloredId)
? tr::lng_premium_emoji_status_title_colored(
tr::now,
lt_user,
std::move(name),
Ui::Text::WithEntities)
: tr::lng_premium_emoji_status_title(
tr::now,
lt_user,
std::move(name),
lt_link,
{ .text = text, .entities = entities, },
Ui::Text::WithEntities);
const auto context = Core::MarkedTextContext{
.session = &controller->session(),
.customEmojiRepaint = [=] { _title->update(); },