HaikuDepot::Model: Set preferred language earlier

Added accessor for preferred language.
This commit is contained in:
Stephan Aßmus
2014-09-20 01:35:38 +02:00
parent fe6f67b410
commit d07ca0696d
2 changed files with 14 additions and 12 deletions
+11 -12
View File
@@ -327,6 +327,17 @@ Model::Model()
// get the defined categories and their translated names.
// This should then be used instead of hard-coded
// categories and translations in the app.
fPreferredLanguage = "en";
BLocaleRoster* localeRoster = BLocaleRoster::Default();
if (localeRoster != NULL) {
BMessage preferredLanguages;
if (localeRoster->GetPreferredLanguages(&preferredLanguages) == B_OK) {
BString language;
if (preferredLanguages.FindString("language", 0, &language) == B_OK)
language.CopyInto(fPreferredLanguage, 0, 2);
}
}
}
@@ -634,18 +645,6 @@ int32
Model::_PopulateAllPackagesEntry(void* cookie)
{
Model* model = static_cast<Model*>(cookie);
model->fPreferredLanguage = "en";
BLocaleRoster* localeRoster = BLocaleRoster::Default();
if (localeRoster != NULL) {
BMessage preferredLanguages;
if (localeRoster->GetPreferredLanguages(&preferredLanguages) == B_OK) {
BString language;
if (preferredLanguages.FindString("language", 0, &language) == B_OK)
language.CopyInto(model->fPreferredLanguage, 0, 2);
}
}
model->_PopulateAllPackagesThread(true);
model->_PopulateAllPackagesThread(false);
return 0;
+3
View File
@@ -102,6 +102,9 @@ public:
void PopulateAllPackages();
void StopPopulatingAllPackages();
const BString& PreferredLanguage() const
{ return fPreferredLanguage; }
private:
static int32 _PopulateAllPackagesEntry(void* cookie);
void _PopulateAllPackagesThread(bool fromCacheOnly);