Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4382)

Unified Diff: chrome/browser/web_resource/web_resource_service.cc

Issue 258037: Fix tips in OS X to respect system language settings instead of locale.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/web_resource/web_resource_service.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/web_resource/web_resource_service.cc
===================================================================
--- chrome/browser/web_resource/web_resource_service.cc (revision 28157)
+++ chrome/browser/web_resource/web_resource_service.cc (working copy)
@@ -205,19 +205,19 @@
resource_dispatcher_host_ = g_browser_process->resource_dispatcher_host();
web_resource_fetcher_ = new WebResourceFetcher(this);
prefs_->RegisterStringPref(prefs::kNTPTipsCacheUpdate, L"0");
- std::wstring locale = ASCIIToWide(g_browser_process->GetApplicationLocale());
+ std::wstring language = WebResourceService::GetWebResourceLanguage(prefs_);
if (prefs_->HasPrefPath(prefs::kNTPTipsServer)) {
web_resource_server_ = prefs_->GetString(prefs::kNTPTipsServer);
// If we are in the correct locale, initialization is done.
- if (EndsWith(web_resource_server_, locale, false))
+ if (EndsWith(web_resource_server_, language, false))
return;
}
// If we have not yet set a server, or if the tips server is set to the wrong
// locale, reset the server and force an immediate update of tips.
web_resource_server_ = kDefaultResourceServer;
- web_resource_server_.append(locale);
+ web_resource_server_.append(language);
prefs_->SetString(prefs::kNTPTipsCacheUpdate, L"");
}
@@ -296,3 +296,18 @@
DoubleToWString(base::Time::Now().ToDoubleT()));
prefs_->SetString(prefs::kNTPTipsServer, web_resource_server_);
}
+
+// static
+std::wstring WebResourceService::GetWebResourceLanguage(PrefService* prefs) {
+#if defined OS_MACOSX
Nico 2009/10/07 14:56:21 On second thought, shouldn't the os x version of t
Miranda Callahan 2009/10/07 16:22:00 Well, the tips need to always be in the same langu
+ // OS X derives the language for the Chrome UI from the list of accepted
+ // languages, which can be different from the locale.
+ std::wstring languageList = prefs->GetString(prefs::kAcceptLanguages);
+ int pos = languageList.find(L",");
+ pos = pos >= 0 ? pos : languageList.length();
+ return languageList.substr(0, pos);
+#else
+ return ASCIIToWide(g_browser_process->GetApplicationLocale());
+#endif
TVL 2009/10/07 12:02:48 drive by: since we're forking what is done here, I
Miranda Callahan 2009/10/07 16:22:00 Good point. I think a source of confusion is that
+}
+
« no previous file with comments | « chrome/browser/web_resource/web_resource_service.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698