diff --git a/Telegram/SourceFiles/intro/introphone.cpp b/Telegram/SourceFiles/intro/introphone.cpp index 74612fbc3f..3962b5b587 100644 --- a/Telegram/SourceFiles/intro/introphone.cpp +++ b/Telegram/SourceFiles/intro/introphone.cpp @@ -202,8 +202,8 @@ QString PhoneWidget::fullNumber() const { return _code->getLastText() + _phone->getLastText(); } -void PhoneWidget::selectCountry(const QString &c) { - _country->onChooseCountry(c); +void PhoneWidget::selectCountry(const QString &country) { + _country->onChooseCountry(country); } void PhoneWidget::setInnerFocus() { diff --git a/Telegram/SourceFiles/intro/introwidget.cpp b/Telegram/SourceFiles/intro/introwidget.cpp index d6aa6b77ce..0f071070d0 100644 --- a/Telegram/SourceFiles/intro/introwidget.cpp +++ b/Telegram/SourceFiles/intro/introwidget.cpp @@ -43,8 +43,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL namespace Intro { namespace { -constexpr str_const kDefaultCountry = "US"; - void PrepareSupportMode() { using Data::AutoDownload::Full; @@ -70,11 +68,7 @@ Widget::Widget(QWidget *parent, not_null account) tr::lng_menu_settings(), st::defaultBoxButton)) , _next(this, nullptr, st::introNextButton) { - auto country = Platform::SystemCountry(); - if (country.isEmpty()) { - country = str_const_toString(kDefaultCountry); - } - getData()->country = country; + getData()->country = Platform::SystemCountry(); _back->entity()->setClickedCallback([this] { historyMove(Direction::Back); }); _back->hide(anim::type::instant); @@ -439,7 +433,7 @@ void Widget::getNearestDC() { ).arg(nearest.vnearest_dc().v ).arg(nearest.vthis_dc().v)); _account->suggestMainDcId(nearest.vnearest_dc().v); - auto nearestCountry = qs(nearest.vcountry()); + const auto nearestCountry = qs(nearest.vcountry()); if (getData()->country != nearestCountry) { getData()->country = nearestCountry; getData()->updated.notify(); diff --git a/Telegram/SourceFiles/platform/linux/info_linux.cpp b/Telegram/SourceFiles/platform/linux/info_linux.cpp index 35e3b9c9ec..255fd79d9b 100644 --- a/Telegram/SourceFiles/platform/linux/info_linux.cpp +++ b/Telegram/SourceFiles/platform/linux/info_linux.cpp @@ -27,13 +27,15 @@ QString SystemVersionPretty() { } QString SystemCountry() { - QLocale locale; - return locale.name().split('_').last(); + return QLocale::system().name().split('_').last(); } QString SystemLanguage() { - QLocale locale; - return locale.name().split('_').first(); + const auto system = QLocale::system(); + const auto languages = system.uiLanguages(); + return languages.isEmpty() + ? system.name().split('_').first() + : languages.front(); } QDate WhenSystemBecomesOutdated() { diff --git a/Telegram/SourceFiles/ui/countryinput.cpp b/Telegram/SourceFiles/ui/countryinput.cpp index 96c5ce85f9..a95a70d216 100644 --- a/Telegram/SourceFiles/ui/countryinput.cpp +++ b/Telegram/SourceFiles/ui/countryinput.cpp @@ -152,7 +152,9 @@ CountrySelectBox::CountrySelectBox(QWidget*) CountrySelectBox::CountrySelectBox(QWidget*, const QString &iso, Type type) : _type(type) , _select(this, st::contactsMultiSelect, tr::lng_country_ph()) { - LastValidISO = iso; + if (Data::CountriesByISO2().contains(iso)) { + LastValidISO = iso; + } } void CountrySelectBox::prepare() {