HaikuDepot::Model: Set preferred language earlier
Added accessor for preferred language.
This commit is contained in:
@@ -327,6 +327,17 @@ Model::Model()
|
|||||||
// get the defined categories and their translated names.
|
// get the defined categories and their translated names.
|
||||||
// This should then be used instead of hard-coded
|
// This should then be used instead of hard-coded
|
||||||
// categories and translations in the app.
|
// 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::_PopulateAllPackagesEntry(void* cookie)
|
||||||
{
|
{
|
||||||
Model* model = static_cast<Model*>(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(true);
|
||||||
model->_PopulateAllPackagesThread(false);
|
model->_PopulateAllPackagesThread(false);
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
@@ -102,6 +102,9 @@ public:
|
|||||||
void PopulateAllPackages();
|
void PopulateAllPackages();
|
||||||
void StopPopulatingAllPackages();
|
void StopPopulatingAllPackages();
|
||||||
|
|
||||||
|
const BString& PreferredLanguage() const
|
||||||
|
{ return fPreferredLanguage; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static int32 _PopulateAllPackagesEntry(void* cookie);
|
static int32 _PopulateAllPackagesEntry(void* cookie);
|
||||||
void _PopulateAllPackagesThread(bool fromCacheOnly);
|
void _PopulateAllPackagesThread(bool fromCacheOnly);
|
||||||
|
|||||||
Reference in New Issue
Block a user