| 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 559 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 730 // the default Accept-Language values for most locales, remove this | 738 // the default Accept-Language values for most locales, remove this |
| 731 // special-casing. | 739 // special-casing. |
| 732 if (accept_lang != "en" || is_ui_english) | 740 if (accept_lang != "en" || is_ui_english) |
| 733 accept_langs_set.insert(accept_lang); | 741 accept_langs_set.insert(accept_lang); |
| 734 } | 742 } |
| 735 accept_languages_[prefs] = accept_langs_set; | 743 accept_languages_[prefs] = accept_langs_set; |
| 736 } | 744 } |
| 737 | 745 |
| 738 void TranslateManager::FetchLanguageListFromTranslateServer( | 746 void TranslateManager::FetchLanguageListFromTranslateServer( |
| 739 PrefService* prefs) { | 747 PrefService* prefs) { |
| 740 DCHECK(language_list_.get()); | |
| 741 | |
| 742 // We don't want to do this when translate is disabled. | 748 // We don't want to do this when translate is disabled. |
| 743 DCHECK(prefs != NULL); | 749 DCHECK(prefs != NULL); |
| 744 if (CommandLine::ForCurrentProcess()->HasSwitch( | 750 if (CommandLine::ForCurrentProcess()->HasSwitch( |
| 745 switches::kDisableTranslate) || | 751 switches::kDisableTranslate) || |
| 746 (prefs != NULL && !prefs->GetBoolean(prefs::kEnableTranslate))) { | 752 (prefs != NULL && !prefs->GetBoolean(prefs::kEnableTranslate))) { |
| 747 return; | 753 return; |
| 748 } | 754 } |
| 749 | 755 |
| 750 if (language_list_.get()) | 756 if (language_list_.get()) |
| 751 language_list_->RequestLanguageList(); | 757 language_list_->RequestLanguageList(); |
| 758 else |
| 759 NOTREACHED(); |
| 752 } | 760 } |
| 753 | 761 |
| 754 void TranslateManager::CleanupPendingUlrFetcher() { | 762 void TranslateManager::CleanupPendingUlrFetcher() { |
| 755 language_list_.reset(); | 763 language_list_.reset(); |
| 756 translate_script_request_pending_.reset(); | 764 translate_script_request_pending_.reset(); |
| 757 } | 765 } |
| 758 | 766 |
| 759 void TranslateManager::RequestTranslateScript() { | 767 void TranslateManager::RequestTranslateScript() { |
| 760 if (translate_script_request_pending_.get() != NULL) | 768 if (translate_script_request_pending_.get() != NULL) |
| 761 return; | 769 return; |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 833 // reason so we are more aggressive showing the shortcuts for never translate. | 841 // reason so we are more aggressive showing the shortcuts for never translate. |
| 834 #if defined(OS_ANDROID) | 842 #if defined(OS_ANDROID) |
| 835 config.never_translate_min_count = 1; | 843 config.never_translate_min_count = 1; |
| 836 #else | 844 #else |
| 837 config.never_translate_min_count = 3; | 845 config.never_translate_min_count = 3; |
| 838 #endif // defined(OS_ANDROID) | 846 #endif // defined(OS_ANDROID) |
| 839 | 847 |
| 840 config.always_translate_min_count = 3; | 848 config.always_translate_min_count = 3; |
| 841 return config; | 849 return config; |
| 842 } | 850 } |
| OLD | NEW |