| OLD | NEW | 
|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #include "chrome/browser/search_engines/template_url_prepopulate_data.h" | 5 #include "chrome/browser/search_engines/template_url_prepopulate_data.h" | 
| 6 | 6 | 
| 7 #if defined(OS_POSIX) && !defined(OS_MACOSX) | 7 #if defined(OS_POSIX) && !defined(OS_MACOSX) | 
| 8 #include <locale.h> | 8 #include <locale.h> | 
| 9 #endif | 9 #endif | 
| 10 | 10 | 
| (...skipping 508 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 519 | 519 | 
| 520 | 520 | 
| 521 // Geographic mappings ///////////////////////////////////////////////////////// | 521 // Geographic mappings ///////////////////////////////////////////////////////// | 
| 522 | 522 | 
| 523 // Please refer to ISO 3166-1 for information about the two-character country | 523 // Please refer to ISO 3166-1 for information about the two-character country | 
| 524 // codes; http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 is useful. In the | 524 // codes; http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 is useful. In the | 
| 525 // following (C++) code, we pack the two letters of the country code into an int | 525 // following (C++) code, we pack the two letters of the country code into an int | 
| 526 // value we call the CountryID. | 526 // value we call the CountryID. | 
| 527 | 527 | 
| 528 const int kCountryIDUnknown = -1; | 528 const int kCountryIDUnknown = -1; | 
| 529 const int kCountryIDNotSet = 0; |  | 
| 530 | 529 | 
| 531 inline int CountryCharsToCountryID(char c1, char c2) { | 530 inline int CountryCharsToCountryID(char c1, char c2) { | 
| 532   return c1 << 8 | c2; | 531   return c1 << 8 | c2; | 
| 533 } | 532 } | 
| 534 | 533 | 
| 535 int CountryCharsToCountryIDWithUpdate(char c1, char c2) { | 534 int CountryCharsToCountryIDWithUpdate(char c1, char c2) { | 
| 536   // SPECIAL CASE: In 2003, Yugoslavia renamed itself to Serbia and Montenegro. | 535   // SPECIAL CASE: In 2003, Yugoslavia renamed itself to Serbia and Montenegro. | 
| 537   // Serbia and Montenegro dissolved their union in June 2006. Yugoslavia was | 536   // Serbia and Montenegro dissolved their union in June 2006. Yugoslavia was | 
| 538   // ISO 'YU' and Serbia and Montenegro were ISO 'CS'. Serbia was subsequently | 537   // ISO 'YU' and Serbia and Montenegro were ISO 'CS'. Serbia was subsequently | 
| 539   // issued 'RS' and Montenegro 'ME'. Windows XP and Mac OS X Leopard still use | 538   // issued 'RS' and Montenegro 'ME'. Windows XP and Mac OS X Leopard still use | 
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 628   CFRange char_range = CFRangeMake(0, 2); | 627   CFRange char_range = CFRangeMake(0, 2); | 
| 629   CFStringGetCharacters(country, char_range, isobuf); | 628   CFStringGetCharacters(country, char_range, isobuf); | 
| 630 | 629 | 
| 631   return CountryCharsToCountryIDWithUpdate(static_cast<char>(isobuf[0]), | 630   return CountryCharsToCountryIDWithUpdate(static_cast<char>(isobuf[0]), | 
| 632                                            static_cast<char>(isobuf[1])); | 631                                            static_cast<char>(isobuf[1])); | 
| 633 } | 632 } | 
| 634 | 633 | 
| 635 #elif defined(OS_ANDROID) | 634 #elif defined(OS_ANDROID) | 
| 636 | 635 | 
| 637 // Initialized by InitCountryCode(). | 636 // Initialized by InitCountryCode(). | 
| 638 int g_country_code_at_install = kCountryIDNotSet; | 637 int g_country_code_at_install = kCountryIDUnknown; | 
| 639 | 638 | 
| 640 int GetCurrentCountryID() { | 639 int GetCurrentCountryID() { | 
| 641   DCHECK(g_country_code_at_install != kCountryIDNotSet); |  | 
| 642   return g_country_code_at_install; | 640   return g_country_code_at_install; | 
| 643 } | 641 } | 
| 644 | 642 | 
|  | 643 void InitCountryCode(const std::string& country_code) { | 
|  | 644   if (country_code.size() != 2) { | 
|  | 645     DLOG(ERROR) << "Invalid country code: " << country_code; | 
|  | 646     g_country_code_at_install = kCountryIDUnknown; | 
|  | 647   } else { | 
|  | 648     g_country_code_at_install = | 
|  | 649         CountryCharsToCountryIDWithUpdate(country_code[0], country_code[1]); | 
|  | 650   } | 
|  | 651 } | 
|  | 652 | 
| 645 #elif defined(OS_POSIX) | 653 #elif defined(OS_POSIX) | 
| 646 | 654 | 
| 647 int GetCurrentCountryID() { | 655 int GetCurrentCountryID() { | 
| 648   const char* locale = setlocale(LC_MESSAGES, NULL); | 656   const char* locale = setlocale(LC_MESSAGES, NULL); | 
| 649 | 657 | 
| 650   if (!locale) | 658   if (!locale) | 
| 651     return kCountryIDUnknown; | 659     return kCountryIDUnknown; | 
| 652 | 660 | 
| 653   // The format of a locale name is: | 661   // The format of a locale name is: | 
| 654   // language[_territory][.codeset][@modifier], where territory is an ISO 3166 | 662   // language[_territory][.codeset][@modifier], where territory is an ISO 3166 | 
| (...skipping 617 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1272 | 1280 | 
| 1273 GURL GetLogoURL(const TemplateURL& template_url, LogoSize size) { | 1281 GURL GetLogoURL(const TemplateURL& template_url, LogoSize size) { | 
| 1274   if (GetEngineType(template_url.url()) == SEARCH_ENGINE_GOOGLE) { | 1282   if (GetEngineType(template_url.url()) == SEARCH_ENGINE_GOOGLE) { | 
| 1275     return GURL((size == LOGO_200_PERCENT) ? | 1283     return GURL((size == LOGO_200_PERCENT) ? | 
| 1276                 google_logos.logo_200_percent_url : | 1284                 google_logos.logo_200_percent_url : | 
| 1277                 google_logos.logo_100_percent_url); | 1285                 google_logos.logo_100_percent_url); | 
| 1278   } | 1286   } | 
| 1279   return GURL(); | 1287   return GURL(); | 
| 1280 } | 1288 } | 
| 1281 | 1289 | 
| 1282 #if defined(OS_ANDROID) |  | 
| 1283 |  | 
| 1284 void InitCountryCode(const std::string& country_code) { |  | 
| 1285   if (country_code.size() != 2) { |  | 
| 1286     DLOG(ERROR) << "Invalid country code: " << country_code; |  | 
| 1287     g_country_code_at_install = kCountryIDUnknown; |  | 
| 1288   } else { |  | 
| 1289     g_country_code_at_install = |  | 
| 1290         CountryCharsToCountryIDWithUpdate(country_code[0], country_code[1]); |  | 
| 1291   } |  | 
| 1292 } |  | 
| 1293 |  | 
| 1294 #endif |  | 
| 1295 |  | 
| 1296 }  // namespace TemplateURLPrepopulateData | 1290 }  // namespace TemplateURLPrepopulateData | 
| OLD | NEW | 
|---|