| Index: chrome/browser/translate/translate_manager.cc
|
| diff --git a/chrome/browser/translate/translate_manager.cc b/chrome/browser/translate/translate_manager.cc
|
| index c2a8424a1540c86bdfe277b385037484f2031b72..1e4f0ec239ff00786905d4b37b93b48ef7a8051d 100644
|
| --- a/chrome/browser/translate/translate_manager.cc
|
| +++ b/chrome/browser/translate/translate_manager.cc
|
| @@ -49,6 +49,7 @@
|
| #include "grit/browser_resources.h"
|
| #include "net/base/escape.h"
|
| #include "net/base/load_flags.h"
|
| +#include "net/base/url_util.h"
|
| #include "net/url_request/url_fetcher.h"
|
| #include "net/url_request/url_request_status.h"
|
| #include "ui/base/resource/resource_bundle.h"
|
| @@ -141,7 +142,12 @@ const char* const kTranslateScriptHeader =
|
| const char* const kReportLanguageDetectionErrorURL =
|
| "https://translate.google.com/translate_error";
|
| const char* const kLanguageListFetchURL =
|
| - "https://translate.googleapis.com/translate_a/l?client=chrome&cb=sl&hl=%s";
|
| + "https://translate.googleapis.com/translate_a/l?client=chrome&cb=sl";
|
| +
|
| +const char* const kLanguageListFetchLocaleQueryName = "hl";
|
| +const char* const kLanguageListFetchAlphaLanguageQueryName = "alpha";
|
| +const char* const kLanguageListFetchAlphaLanguageQueryValue = "1";
|
| +
|
| const int kMaxRetryLanguageListFetch = 5;
|
| const int kTranslateScriptExpirationDelayDays = 1;
|
|
|
| @@ -776,11 +782,23 @@ void TranslateManager::FetchLanguageListFromTranslateServer(
|
| return;
|
| }
|
|
|
| - GURL language_list_fetch_url = GURL(
|
| - base::StringPrintf(
|
| - kLanguageListFetchURL,
|
| - GetLanguageCode(g_browser_process->GetApplicationLocale()).c_str()));
|
| + GURL language_list_fetch_url = GURL(kLanguageListFetchURL);
|
| + language_list_fetch_url = net::AppendQueryParameter(
|
| + language_list_fetch_url,
|
| + kLanguageListFetchLocaleQueryName,
|
| + GetLanguageCode(g_browser_process->GetApplicationLocale()).c_str());
|
| +
|
| + const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
| + if (command_line.HasSwitch(switches::kEnableTranslateAlphaLanguages)) {
|
| + language_list_fetch_url = net::AppendQueryParameter(
|
| + language_list_fetch_url,
|
| + kLanguageListFetchAlphaLanguageQueryName,
|
| + kLanguageListFetchAlphaLanguageQueryValue);
|
| + }
|
| AddApiKeyToUrl(&language_list_fetch_url);
|
| + VLOG(9) << "Fetch supporting language list from: "
|
| + << language_list_fetch_url.spec().c_str();
|
| +
|
| language_list_request_pending_.reset(net::URLFetcher::Create(
|
| 1, language_list_fetch_url, net::URLFetcher::GET, this));
|
| language_list_request_pending_->SetLoadFlags(net::LOAD_DO_NOT_SEND_COOKIES |
|
|
|