Use only first Accept-Language when in Incognito.
Previously, when in Incognito the browser UI language was used for
Accept-Language and navigator.language.
This changes it so that only the first language in the Accept-Language
list is used.
Bug: 1077547
Change-Id: I9d7e6748411e12dfc2969028cce8991840c6c481
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2392440
Commit-Queue: Trevor Perrier <[email protected]>
Reviewed-by: Lei Zhang <[email protected]>
Reviewed-by: Ramin Halavati <[email protected]>
Reviewed-by: Megan Jablonski <[email protected]>
Cr-Commit-Position: refs/heads/master@{#805987}
diff --git a/chrome/browser/renderer_preferences_util.cc b/chrome/browser/renderer_preferences_util.cc
index 71fdef9..7ba5b3d 100644
--- a/chrome/browser/renderer_preferences_util.cc
+++ b/chrome/browser/renderer_preferences_util.cc
@@ -14,6 +14,7 @@
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/common/pref_names.h"
+#include "components/language/core/browser/language_prefs.h"
#include "components/language/core/browser/pref_names.h"
#include "components/prefs/pref_service.h"
#include "content/public/browser/browser_accessibility_state.h"
@@ -97,7 +98,9 @@
Profile* profile) {
const PrefService* pref_service = profile->GetPrefs();
if (profile->IsOffTheRecord()) {
- prefs->accept_languages = g_browser_process->GetApplicationLocale();
+ // In incognito mode return only the first language.
+ prefs->accept_languages = language::GetFirstLanguage(
+ pref_service->GetString(language::prefs::kAcceptLanguages));
} else {
prefs->accept_languages =
pref_service->GetString(language::prefs::kAcceptLanguages);