Moved out verify details below app button when it is presented in info.
This commit is contained in:
@@ -2076,13 +2076,23 @@ void DetailsFiller::setupMainApp() {
|
||||
});
|
||||
|
||||
const auto url = tr::lng_mini_apps_tos_url(tr::now);
|
||||
Ui::AddDividerText(
|
||||
const auto divider = Ui::AddDividerText(
|
||||
_wrap,
|
||||
tr::lng_profile_open_app_about(
|
||||
lt_terms,
|
||||
tr::lng_profile_open_app_terms() | Ui::Text::ToLink(url),
|
||||
Ui::Text::WithEntities)
|
||||
)->setClickHandlerFilter([=](const auto &...) {
|
||||
rpl::combine(
|
||||
tr::lng_profile_open_app_about(
|
||||
lt_terms,
|
||||
tr::lng_profile_open_app_terms() | Ui::Text::ToLink(url),
|
||||
Ui::Text::WithEntities),
|
||||
user->session().changes().peerFlagsValue(
|
||||
user,
|
||||
Data::PeerUpdate::Flag::VerifyInfo)
|
||||
) | rpl::map([=](TextWithEntities text, auto) {
|
||||
if (const auto verify = user->botVerifyDetails()) {
|
||||
text = text.append(u"\n\n"_q).append(verify->description);
|
||||
}
|
||||
return text;
|
||||
}));
|
||||
divider->setClickHandlerFilter([=](const auto &...) {
|
||||
UrlClickHandler::Open(url);
|
||||
return false;
|
||||
});
|
||||
|
||||
@@ -64,8 +64,16 @@ void AddAboutVerification(
|
||||
}
|
||||
if (!info) {
|
||||
Ui::AddDivider(inner);
|
||||
} else if (!info->description.empty()) {
|
||||
Ui::AddDividerText(inner, rpl::single(info->description));
|
||||
} else {
|
||||
auto hasMainApp = false;
|
||||
if (const auto user = peer->asUser()) {
|
||||
if (user->botInfo) {
|
||||
hasMainApp = user->botInfo->hasMainApp;
|
||||
}
|
||||
}
|
||||
if (!hasMainApp && !info->description.empty()) {
|
||||
Ui::AddDividerText(inner, rpl::single(info->description));
|
||||
}
|
||||
}
|
||||
inner->resizeToWidth(inner->width());
|
||||
}, inner->lifetime());
|
||||
@@ -166,6 +174,9 @@ object_ptr<Ui::RpWidget> InnerWidget::setupContent(
|
||||
addAboutVerificationOrDivider(result, rpl::duplicate(showNext));
|
||||
result->add(std::move(actions));
|
||||
}
|
||||
if (!_aboutVerificationAdded) {
|
||||
AddAboutVerification(result, _peer);
|
||||
}
|
||||
if (_peer->isChat() || _peer->isMegagroup()) {
|
||||
if (!_peer->isMonoforum()) {
|
||||
setupMembers(result.data(), rpl::duplicate(showNext));
|
||||
|
||||
Reference in New Issue
Block a user