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 |