mirror of
https://github.com/telegramdesktop/tdesktop
synced 2025-09-03 07:56:03 +00:00
Added initial support for increased premium count of accounts.
This commit is contained in:
@@ -236,7 +236,7 @@ void Domain::scheduleUpdateUnreadBadge() {
|
||||
|
||||
not_null<Main::Account*> Domain::add(MTP::Environment environment) {
|
||||
Expects(started());
|
||||
Expects(_accounts.size() < kMaxAccounts);
|
||||
Expects(_accounts.size() < kPremiumMaxAccounts);
|
||||
|
||||
static const auto cloneConfig = [](const MTP::Config &config) {
|
||||
return std::make_unique<MTP::Config>(config);
|
||||
@@ -283,7 +283,7 @@ not_null<Main::Account*> Domain::add(MTP::Environment environment) {
|
||||
}
|
||||
|
||||
void Domain::addActivated(MTP::Environment environment) {
|
||||
if (accounts().size() < Main::Domain::kMaxAccounts) {
|
||||
if (accounts().size() < maxAccounts()) {
|
||||
activate(add(environment));
|
||||
} else {
|
||||
for (auto &[index, account] : accounts()) {
|
||||
@@ -438,4 +438,12 @@ void Domain::scheduleWriteAccounts() {
|
||||
});
|
||||
}
|
||||
|
||||
int Domain::maxAccounts() const {
|
||||
const auto isAnyPreimium = ranges::any_of(accounts(), [](
|
||||
const Main::Domain::AccountWithIndex &d) {
|
||||
return d.account->session().premium();
|
||||
});
|
||||
return isAnyPreimium ? kPremiumMaxAccounts : kMaxAccounts;
|
||||
}
|
||||
|
||||
} // namespace Main
|
||||
|
Reference in New Issue
Block a user