Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(299)

Side by Side Diff: chrome/browser/tab_contents/render_view_context_menu.cc

Issue 143003020: Move TranslateLanguageList to the Translate component (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@removeDelegate
Patch Set: gn build Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/tab_contents/render_view_context_menu.h" 5 #include "chrome/browser/tab_contents/render_view_context_menu.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <set> 8 #include <set>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 #include "chrome/browser/ui/search_engines/search_engine_tab_helper.h" 58 #include "chrome/browser/ui/search_engines/search_engine_tab_helper.h"
59 #include "chrome/browser/ui/tab_contents/core_tab_helper.h" 59 #include "chrome/browser/ui/tab_contents/core_tab_helper.h"
60 #include "chrome/common/chrome_constants.h" 60 #include "chrome/common/chrome_constants.h"
61 #include "chrome/common/chrome_switches.h" 61 #include "chrome/common/chrome_switches.h"
62 #include "chrome/common/content_restriction.h" 62 #include "chrome/common/content_restriction.h"
63 #include "chrome/common/net/url_util.h" 63 #include "chrome/common/net/url_util.h"
64 #include "chrome/common/pref_names.h" 64 #include "chrome/common/pref_names.h"
65 #include "chrome/common/render_messages.h" 65 #include "chrome/common/render_messages.h"
66 #include "chrome/common/spellcheck_messages.h" 66 #include "chrome/common/spellcheck_messages.h"
67 #include "chrome/common/url_constants.h" 67 #include "chrome/common/url_constants.h"
68 #include "components/translate/core/browser/translate_download_manager.h"
68 #include "content/public/browser/child_process_security_policy.h" 69 #include "content/public/browser/child_process_security_policy.h"
69 #include "content/public/browser/download_manager.h" 70 #include "content/public/browser/download_manager.h"
70 #include "content/public/browser/download_save_info.h" 71 #include "content/public/browser/download_save_info.h"
71 #include "content/public/browser/download_url_parameters.h" 72 #include "content/public/browser/download_url_parameters.h"
72 #include "content/public/browser/navigation_details.h" 73 #include "content/public/browser/navigation_details.h"
73 #include "content/public/browser/navigation_entry.h" 74 #include "content/public/browser/navigation_entry.h"
74 #include "content/public/browser/notification_service.h" 75 #include "content/public/browser/notification_service.h"
75 #include "content/public/browser/render_process_host.h" 76 #include "content/public/browser/render_process_host.h"
76 #include "content/public/browser/render_view_host.h" 77 #include "content/public/browser/render_view_host.h"
77 #include "content/public/browser/render_widget_host_view.h" 78 #include "content/public/browser/render_widget_host_view.h"
(...skipping 870 matching lines...) Expand 10 before | Expand all | Expand 10 after
948 menu_model_.AddItemWithStringId(IDC_BACK, IDS_CONTENT_CONTEXT_BACK); 949 menu_model_.AddItemWithStringId(IDC_BACK, IDS_CONTENT_CONTEXT_BACK);
949 menu_model_.AddItemWithStringId(IDC_FORWARD, IDS_CONTENT_CONTEXT_FORWARD); 950 menu_model_.AddItemWithStringId(IDC_FORWARD, IDS_CONTENT_CONTEXT_FORWARD);
950 menu_model_.AddItemWithStringId(IDC_RELOAD, IDS_CONTENT_CONTEXT_RELOAD); 951 menu_model_.AddItemWithStringId(IDC_RELOAD, IDS_CONTENT_CONTEXT_RELOAD);
951 menu_model_.AddSeparator(ui::NORMAL_SEPARATOR); 952 menu_model_.AddSeparator(ui::NORMAL_SEPARATOR);
952 menu_model_.AddItemWithStringId(IDC_SAVE_PAGE, 953 menu_model_.AddItemWithStringId(IDC_SAVE_PAGE,
953 IDS_CONTENT_CONTEXT_SAVEPAGEAS); 954 IDS_CONTENT_CONTEXT_SAVEPAGEAS);
954 menu_model_.AddItemWithStringId(IDC_PRINT, IDS_CONTENT_CONTEXT_PRINT); 955 menu_model_.AddItemWithStringId(IDC_PRINT, IDS_CONTENT_CONTEXT_PRINT);
955 956
956 if (TranslateManager::IsTranslatableURL(params_.page_url)) { 957 if (TranslateManager::IsTranslatableURL(params_.page_url)) {
957 std::string locale = g_browser_process->GetApplicationLocale(); 958 std::string locale = g_browser_process->GetApplicationLocale();
958 locale = TranslateManager::GetLanguageCode(locale); 959 locale = TranslateDownloadManager::GetLanguageCode(locale);
959 base::string16 language = 960 base::string16 language =
960 l10n_util::GetDisplayNameForLocale(locale, locale, true); 961 l10n_util::GetDisplayNameForLocale(locale, locale, true);
961 menu_model_.AddItem( 962 menu_model_.AddItem(
962 IDC_CONTENT_CONTEXT_TRANSLATE, 963 IDC_CONTENT_CONTEXT_TRANSLATE,
963 l10n_util::GetStringFUTF16(IDS_CONTENT_CONTEXT_TRANSLATE, language)); 964 l10n_util::GetStringFUTF16(IDS_CONTENT_CONTEXT_TRANSLATE, language));
964 } 965 }
965 966
966 menu_model_.AddItemWithStringId(IDC_VIEW_SOURCE, 967 menu_model_.AddItemWithStringId(IDC_VIEW_SOURCE,
967 IDS_CONTENT_CONTEXT_VIEWPAGESOURCE); 968 IDS_CONTENT_CONTEXT_VIEWPAGESOURCE);
968 menu_model_.AddItemWithStringId(IDC_CONTENT_CONTEXT_VIEWPAGEINFO, 969 menu_model_.AddItemWithStringId(IDC_CONTENT_CONTEXT_VIEWPAGEINFO,
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after
1224 return true; 1225 return true;
1225 1226
1226 case IDC_CONTENT_CONTEXT_TRANSLATE: { 1227 case IDC_CONTENT_CONTEXT_TRANSLATE: {
1227 TranslateTabHelper* translate_tab_helper = 1228 TranslateTabHelper* translate_tab_helper =
1228 TranslateTabHelper::FromWebContents(source_web_contents_); 1229 TranslateTabHelper::FromWebContents(source_web_contents_);
1229 if (!translate_tab_helper) 1230 if (!translate_tab_helper)
1230 return false; 1231 return false;
1231 std::string original_lang = 1232 std::string original_lang =
1232 translate_tab_helper->GetLanguageState().original_language(); 1233 translate_tab_helper->GetLanguageState().original_language();
1233 std::string target_lang = g_browser_process->GetApplicationLocale(); 1234 std::string target_lang = g_browser_process->GetApplicationLocale();
1234 target_lang = TranslateManager::GetLanguageCode(target_lang); 1235 target_lang = TranslateDownloadManager::GetLanguageCode(target_lang);
1235 // Note that we intentionally enable the menu even if the original and 1236 // Note that we intentionally enable the menu even if the original and
1236 // target languages are identical. This is to give a way to user to 1237 // target languages are identical. This is to give a way to user to
1237 // translate a page that might contains text fragments in a different 1238 // translate a page that might contains text fragments in a different
1238 // language. 1239 // language.
1239 return ((params_.edit_flags & WebContextMenuData::CanTranslate) != 0) && 1240 return ((params_.edit_flags & WebContextMenuData::CanTranslate) != 0) &&
1240 !original_lang.empty() && // Did we receive the page language yet? 1241 !original_lang.empty() && // Did we receive the page language yet?
1241 !translate_tab_helper->GetLanguageState().IsPageTranslated() && 1242 !translate_tab_helper->GetLanguageState().IsPageTranslated() &&
1242 !source_web_contents_->GetInterstitialPage() && 1243 !source_web_contents_->GetInterstitialPage() &&
1243 // There are some application locales which can't be used as a 1244 // There are some application locales which can't be used as a
1244 // target language for translation. 1245 // target language for translation.
1245 TranslateManager::IsSupportedLanguage(target_lang) && 1246 TranslateDownloadManager::IsSupportedLanguage(target_lang) &&
1246 // Disable on the Instant Extended NTP. 1247 // Disable on the Instant Extended NTP.
1247 !chrome::IsInstantNTP(source_web_contents_); 1248 !chrome::IsInstantNTP(source_web_contents_);
1248 } 1249 }
1249 1250
1250 case IDC_CONTENT_CONTEXT_OPENLINKNEWTAB: 1251 case IDC_CONTENT_CONTEXT_OPENLINKNEWTAB:
1251 case IDC_CONTENT_CONTEXT_OPENLINKNEWWINDOW: 1252 case IDC_CONTENT_CONTEXT_OPENLINKNEWWINDOW:
1252 return params_.link_url.is_valid(); 1253 return params_.link_url.is_valid();
1253 1254
1254 case IDC_CONTENT_CONTEXT_COPYLINKLOCATION: 1255 case IDC_CONTENT_CONTEXT_COPYLINKLOCATION:
1255 return params_.unfiltered_link_url.is_valid(); 1256 return params_.unfiltered_link_url.is_valid();
(...skipping 550 matching lines...) Expand 10 before | Expand all | Expand 10 after
1806 TranslateTabHelper* translate_tab_helper = 1807 TranslateTabHelper* translate_tab_helper =
1807 TranslateTabHelper::FromWebContents(source_web_contents_); 1808 TranslateTabHelper::FromWebContents(source_web_contents_);
1808 if (!translate_tab_helper || 1809 if (!translate_tab_helper ||
1809 translate_tab_helper->GetLanguageState().IsPageTranslated() || 1810 translate_tab_helper->GetLanguageState().IsPageTranslated() ||
1810 translate_tab_helper->GetLanguageState().translation_pending()) { 1811 translate_tab_helper->GetLanguageState().translation_pending()) {
1811 return; 1812 return;
1812 } 1813 }
1813 std::string original_lang = 1814 std::string original_lang =
1814 translate_tab_helper->GetLanguageState().original_language(); 1815 translate_tab_helper->GetLanguageState().original_language();
1815 std::string target_lang = g_browser_process->GetApplicationLocale(); 1816 std::string target_lang = g_browser_process->GetApplicationLocale();
1816 target_lang = TranslateManager::GetLanguageCode(target_lang); 1817 target_lang = TranslateDownloadManager::GetLanguageCode(target_lang);
1817 // Since the user decided to translate for that language and site, clears 1818 // Since the user decided to translate for that language and site, clears
1818 // any preferences for not translating them. 1819 // any preferences for not translating them.
1819 TranslatePrefs prefs(profile_->GetPrefs()); 1820 TranslatePrefs prefs(profile_->GetPrefs());
1820 prefs.UnblockLanguage(original_lang); 1821 prefs.UnblockLanguage(original_lang);
1821 prefs.RemoveSiteFromBlacklist(params_.page_url.HostNoBrackets()); 1822 prefs.RemoveSiteFromBlacklist(params_.page_url.HostNoBrackets());
1822 TranslateManager::GetInstance()->TranslatePage( 1823 TranslateManager::GetInstance()->TranslatePage(
1823 source_web_contents_, original_lang, target_lang); 1824 source_web_contents_, original_lang, target_lang);
1824 break; 1825 break;
1825 } 1826 }
1826 1827
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after
2098 source_web_contents_->GetRenderViewHost()-> 2099 source_web_contents_->GetRenderViewHost()->
2099 ExecuteMediaPlayerActionAtLocation(location, action); 2100 ExecuteMediaPlayerActionAtLocation(location, action);
2100 } 2101 }
2101 2102
2102 void RenderViewContextMenu::PluginActionAt( 2103 void RenderViewContextMenu::PluginActionAt(
2103 const gfx::Point& location, 2104 const gfx::Point& location,
2104 const WebPluginAction& action) { 2105 const WebPluginAction& action) {
2105 source_web_contents_->GetRenderViewHost()-> 2106 source_web_contents_->GetRenderViewHost()->
2106 ExecutePluginActionAtLocation(location, action); 2107 ExecutePluginActionAtLocation(location, action);
2107 } 2108 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698