From 2f521da9aa36926f5dc451a82ab68fd98d04aefd Mon Sep 17 00:00:00 2001 From: Ken Moore Date: Tue, 1 Dec 2015 16:44:32 -0500 Subject: Fix up the loading of locales through the StartMenu/Session. Now it will properly make the locale changes *if* it could properly load the locale (ensuring consistency between system/session). --- lumina-desktop/panel-plugins/systemstart/StartMenu.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'lumina-desktop/panel-plugins/systemstart/StartMenu.cpp') diff --git a/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp b/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp index 043cbba0..c817b1a3 100644 --- a/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp +++ b/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp @@ -99,11 +99,13 @@ void StartMenu::UpdateAll(){ QStringList locales = LUtils::knownLocales(); ui->stackedWidget->setCurrentWidget(ui->page_main); //need to ensure the settings page is not active ui->combo_locale->clear(); - QLocale curr; + QString curr = LUtils::currentLocale(); + qDebug() << "Update Locales:" << locales; + qDebug() << "Current Locale:" << curr; for(int i=0; icombo_locale->addItem(loc.nativeLanguageName(), locales[i]); //Make the display text prettier later - if(locales[i] == curr.name() || locales[i] == curr.name().section("_",0,0) ){ + ui->combo_locale->addItem(loc.nativeLanguageName() +" ("+locales[i]+")", locales[i]); //Make the display text prettier later + if(locales[i] == curr || locales[i] == curr.section("_",0,0) ){ //Current Locale ui->combo_locale->setCurrentIndex(ui->combo_locale->count()-1); //the last item in the list right now } @@ -553,6 +555,7 @@ void StartMenu::on_combo_locale_currentIndexChanged(int){ if(ui->stackedWidget->currentWidget()!=ui->page_settings){ return; } QString locale = ui->combo_locale->currentData().toString(); emit CloseMenu(); + LSession::processEvents(); LSession::handle()->switchLocale(locale); } -- cgit