| 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/translate/translate_manager.h" | 5 #include "chrome/browser/translate/translate_manager.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
| 9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
| 10 #include "base/memory/singleton.h" | 10 #include "base/memory/singleton.h" |
| (...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 151 } | 151 } |
| 152 | 152 |
| 153 // static | 153 // static |
| 154 bool TranslateManager::IsSupportedLanguage(const std::string& language) { | 154 bool TranslateManager::IsSupportedLanguage(const std::string& language) { |
| 155 if (GetInstance()->language_list_.get()) | 155 if (GetInstance()->language_list_.get()) |
| 156 return GetInstance()->language_list_->IsSupportedLanguage(language); | 156 return GetInstance()->language_list_->IsSupportedLanguage(language); |
| 157 NOTREACHED(); | 157 NOTREACHED(); |
| 158 return false; | 158 return false; |
| 159 } | 159 } |
| 160 | 160 |
| 161 // static |
| 162 bool TranslateManager::IsAlphaLanguage(const std::string& language) { |
| 163 if (GetInstance()->language_list_.get()) |
| 164 return GetInstance()->language_list_->IsAlphaLanguage(language); |
| 165 NOTREACHED(); |
| 166 return false; |
| 167 } |
| 168 |
| 161 void TranslateManager::Observe(int type, | 169 void TranslateManager::Observe(int type, |
| 162 const content::NotificationSource& source, | 170 const content::NotificationSource& source, |
| 163 const content::NotificationDetails& details) { | 171 const content::NotificationDetails& details) { |
| 164 switch (type) { | 172 switch (type) { |
| 165 case content::NOTIFICATION_NAV_ENTRY_COMMITTED: { | 173 case content::NOTIFICATION_NAV_ENTRY_COMMITTED: { |
| 166 NavigationController* controller = | 174 NavigationController* controller = |
| 167 content::Source<NavigationController>(source).ptr(); | 175 content::Source<NavigationController>(source).ptr(); |
| 168 content::LoadCommittedDetails* load_details = | 176 content::LoadCommittedDetails* load_details = |
| 169 content::Details<content::LoadCommittedDetails>(details).ptr(); | 177 content::Details<content::LoadCommittedDetails>(details).ptr(); |
| 170 NavigationEntry* entry = controller->GetActiveEntry(); | 178 NavigationEntry* entry = controller->GetActiveEntry(); |
| (...skipping 552 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 723 // the default Accept-Language values for most locales, remove this | 731 // the default Accept-Language values for most locales, remove this |
| 724 // special-casing. | 732 // special-casing. |
| 725 if (accept_lang != "en" || is_ui_english) | 733 if (accept_lang != "en" || is_ui_english) |
| 726 accept_langs_set.insert(accept_lang); | 734 accept_langs_set.insert(accept_lang); |
| 727 } | 735 } |
| 728 accept_languages_[prefs] = accept_langs_set; | 736 accept_languages_[prefs] = accept_langs_set; |
| 729 } | 737 } |
| 730 | 738 |
| 731 void TranslateManager::FetchLanguageListFromTranslateServer( | 739 void TranslateManager::FetchLanguageListFromTranslateServer( |
| 732 PrefService* prefs) { | 740 PrefService* prefs) { |
| 733 DCHECK(language_list_.get()); | |
| 734 | |
| 735 // We don't want to do this when translate is disabled. | 741 // We don't want to do this when translate is disabled. |
| 736 DCHECK(prefs != NULL); | 742 DCHECK(prefs != NULL); |
| 737 if (CommandLine::ForCurrentProcess()->HasSwitch( | 743 if (CommandLine::ForCurrentProcess()->HasSwitch( |
| 738 switches::kDisableTranslate) || | 744 switches::kDisableTranslate) || |
| 739 (prefs != NULL && !prefs->GetBoolean(prefs::kEnableTranslate))) { | 745 (prefs != NULL && !prefs->GetBoolean(prefs::kEnableTranslate))) { |
| 740 return; | 746 return; |
| 741 } | 747 } |
| 742 | 748 |
| 743 if (language_list_.get()) | 749 if (language_list_.get()) |
| 744 language_list_->RequestLanguageList(); | 750 language_list_->RequestLanguageList(); |
| 751 else |
| 752 NOTREACHED(); |
| 745 } | 753 } |
| 746 | 754 |
| 747 void TranslateManager::CleanupPendingUlrFetcher() { | 755 void TranslateManager::CleanupPendingUlrFetcher() { |
| 748 language_list_.reset(); | 756 language_list_.reset(); |
| 749 translate_script_request_pending_.reset(); | 757 translate_script_request_pending_.reset(); |
| 750 } | 758 } |
| 751 | 759 |
| 752 void TranslateManager::RequestTranslateScript() { | 760 void TranslateManager::RequestTranslateScript() { |
| 753 if (translate_script_request_pending_.get() != NULL) | 761 if (translate_script_request_pending_.get() != NULL) |
| 754 return; | 762 return; |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 826 // reason so we are more aggressive showing the shortcuts for never translate. | 834 // reason so we are more aggressive showing the shortcuts for never translate. |
| 827 #if defined(OS_ANDROID) | 835 #if defined(OS_ANDROID) |
| 828 config.never_translate_min_count = 1; | 836 config.never_translate_min_count = 1; |
| 829 #else | 837 #else |
| 830 config.never_translate_min_count = 3; | 838 config.never_translate_min_count = 3; |
| 831 #endif // defined(OS_ANDROID) | 839 #endif // defined(OS_ANDROID) |
| 832 | 840 |
| 833 config.always_translate_min_count = 3; | 841 config.always_translate_min_count = 3; |
| 834 return config; | 842 return config; |
| 835 } | 843 } |
| OLD | NEW |