mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2026-08-02 18:21:53 +00:00
Merge tag 'v4.15.0' into dev
# Conflicts: # Telegram/Resources/winrc/Telegram.rc # Telegram/Resources/winrc/Updater.rc # Telegram/SourceFiles/core/version.h # Telegram/SourceFiles/dialogs/dialogs_row.cpp # Telegram/SourceFiles/dialogs/dialogs_widget.cpp # Telegram/SourceFiles/history/view/history_view_message.cpp # Telegram/SourceFiles/info/profile/info_profile_actions.cpp # Telegram/lib_ui # snap/snapcraft.yaml
This commit is contained in:
@@ -556,7 +556,7 @@ void SessionNavigation::showPeerByLinkResolved(
|
||||
} else {
|
||||
showPeerInfo(peer, params);
|
||||
}
|
||||
} else if (resolveType == ResolveType::Boost && peer->isBroadcast()) {
|
||||
} else if (resolveType == ResolveType::Boost && peer->isChannel()) {
|
||||
resolveBoostState(peer->asChannel());
|
||||
} else {
|
||||
// Show specific posts only in channels / supergroups.
|
||||
@@ -634,7 +634,9 @@ void SessionNavigation::resolveBoostState(not_null<ChannelData*> channel) {
|
||||
uiShow()->show(Box(Ui::BoostBox, Ui::BoostBoxData{
|
||||
.name = channel->name(),
|
||||
.boost = ParseBoostCounters(result),
|
||||
.features = LookupBoostFeatures(channel),
|
||||
.allowMulti = (BoostsForGift(_session) > 0),
|
||||
.group = channel->isMegagroup(),
|
||||
}, submit));
|
||||
}).fail([=](const MTP::Error &error) {
|
||||
_boostStateResolving = nullptr;
|
||||
@@ -663,10 +665,12 @@ void SessionNavigation::applyBoost(
|
||||
uiShow()->show(
|
||||
Box(Ui::GiftForBoostsBox, name, receive, again));
|
||||
} else {
|
||||
uiShow()->show(Box(Ui::BoostBoxAlready));
|
||||
uiShow()->show(
|
||||
Box(Ui::BoostBoxAlready, channel->isMegagroup()));
|
||||
}
|
||||
} else if (!_session->premium()) {
|
||||
uiShow()->show(Box(Ui::PremiumForBoostsBox, [=] {
|
||||
const auto group = channel->isMegagroup();
|
||||
uiShow()->show(Box(Ui::PremiumForBoostsBox, group, [=] {
|
||||
const auto id = peerToChannel(channel->id).bare;
|
||||
Settings::ShowPremium(
|
||||
parentController(),
|
||||
@@ -678,12 +682,16 @@ void SessionNavigation::applyBoost(
|
||||
uiShow()->show(
|
||||
Box(Ui::GiftForBoostsBox, name, receive, again));
|
||||
} else {
|
||||
uiShow()->show(Box(Ui::GiftedNoBoostsBox));
|
||||
uiShow()->show(
|
||||
Box(Ui::GiftedNoBoostsBox, channel->isMegagroup()));
|
||||
}
|
||||
done({});
|
||||
} else {
|
||||
const auto weak = std::make_shared<QPointer<Ui::BoxContent>>();
|
||||
const auto reassign = [=](std::vector<int> slots, int sources) {
|
||||
const auto reassign = [=](
|
||||
std::vector<int> slots,
|
||||
int groups,
|
||||
int channels) {
|
||||
const auto count = int(slots.size());
|
||||
const auto callback = [=](Ui::BoostCounters counters) {
|
||||
if (const auto strong = weak->data()) {
|
||||
@@ -695,10 +703,14 @@ void SessionNavigation::applyBoost(
|
||||
lt_count,
|
||||
count,
|
||||
lt_channels,
|
||||
tr::lng_boost_reassign_channels(
|
||||
tr::now,
|
||||
lt_count,
|
||||
sources)));
|
||||
(!groups
|
||||
? tr::lng_boost_reassign_channels
|
||||
: !channels
|
||||
? tr::lng_boost_reassign_groups
|
||||
: tr::lng_boost_reassign_mixed)(
|
||||
tr::now,
|
||||
lt_count,
|
||||
groups + channels)));
|
||||
};
|
||||
applyBoostsChecked(
|
||||
channel,
|
||||
|
||||
Reference in New Issue
Block a user