* The locale roster keeps its own Language instead of using the locale one, so that changing the locale doesn't reset the

language.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37918 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Adrien Destugues
2010-08-05 09:27:13 +00:00
parent e4e72487c2
commit 58fa4d5717
3 changed files with 3 additions and 2 deletions
@@ -109,6 +109,7 @@ struct RosterData {
BMessage fPreferredLanguages; BMessage fPreferredLanguages;
BLocale fDefaultLocale; BLocale fDefaultLocale;
BLanguage fDefaultLanguage;
BTimeZone fDefaultTimeZone; BTimeZone fDefaultTimeZone;
RosterData(); RosterData();
+1 -1
View File
@@ -104,7 +104,7 @@ BLocaleRoster::GetDefaultLanguage(BLanguage* language) const
if (!lock.IsLocked()) if (!lock.IsLocked())
return B_ERROR; return B_ERROR;
*language = *gRosterData.fDefaultLocale.Language(); *language = gRosterData.fDefaultLanguage;
return B_OK; return B_OK;
} }
+1 -1
View File
@@ -592,7 +592,7 @@ RosterData::_SetPreferredLanguages(const BMessage* languages)
return B_ERROR; return B_ERROR;
fDefaultLocale.SetCollator(BCollator(langName.String())); fDefaultLocale.SetCollator(BCollator(langName.String()));
fDefaultLocale.SetLanguage(langName.String()); fDefaultLanguage.SetTo(langName.String());
fPreferredLanguages.RemoveName("language"); fPreferredLanguages.RemoveName("language");
for (int i = 0; languages->FindString("language", i, &langName) == B_OK; for (int i = 0; languages->FindString("language", i, &langName) == B_OK;