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

Unified Diff: chrome/browser/tab_contents/render_view_context_menu.cc

Issue 7086005: Context menu for "Voice recognition options" (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: No changes (Just trying to get commit-bot to wake up) Created 9 years, 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/tab_contents/render_view_context_menu.h ('k') | chrome/common/pref_names.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/tab_contents/render_view_context_menu.cc
diff --git a/chrome/browser/tab_contents/render_view_context_menu.cc b/chrome/browser/tab_contents/render_view_context_menu.cc
index b4b8518d4be1332e2a00c25c7dec9518985ce2cc..99d93bad30ed95586d0aba1d9866d543b6920ede 100644
--- a/chrome/browser/tab_contents/render_view_context_menu.cc
+++ b/chrome/browser/tab_contents/render_view_context_menu.cc
@@ -24,6 +24,7 @@
#include "chrome/browser/download/download_util.h"
#include "chrome/browser/extensions/extension_event_router.h"
#include "chrome/browser/extensions/extension_service.h"
+#include "chrome/browser/google/google_util.h"
#include "chrome/browser/net/browser_url_util.h"
#include "chrome/browser/page_info_window.h"
#include "chrome/browser/platform_util.h"
@@ -193,6 +194,7 @@ RenderViewContextMenu::RenderViewContextMenu(
ALLOW_THIS_IN_INITIALIZER_LIST(menu_model_(this)),
external_(false),
ALLOW_THIS_IN_INITIALIZER_LIST(spellcheck_submenu_model_(this)),
+ ALLOW_THIS_IN_INITIALIZER_LIST(speech_input_submenu_model_(this)),
ALLOW_THIS_IN_INITIALIZER_LIST(bidi_submenu_model_(this)),
ALLOW_THIS_IN_INITIALIZER_LIST(protocol_handler_submenu_model_(this)),
protocol_handler_registry_(
@@ -790,6 +792,7 @@ void RenderViewContextMenu::AppendEditableItems() {
}
AppendSpellcheckOptionsSubMenu();
+ AppendSpeechInputOptionsSubMenu();
#if defined(OS_MACOSX)
// OS X provides a contextual menu to set writing direction for BiDi
@@ -850,6 +853,24 @@ void RenderViewContextMenu::AppendSpellcheckOptionsSubMenu() {
&spellcheck_submenu_model_);
}
+void RenderViewContextMenu::AppendSpeechInputOptionsSubMenu() {
+ if (params_.speech_input_enabled) {
+ speech_input_submenu_model_.AddCheckItem(
+ IDC_CONTENT_CONTEXT_SPEECH_INPUT_CENSOR_RESULTS,
+ l10n_util::GetStringUTF16(
+ IDS_CONTENT_CONTEXT_SPEECH_INPUT_CENSOR_RESULTS));
+
+ speech_input_submenu_model_.AddItemWithStringId(
+ IDC_CONTENT_CONTEXT_SPEECH_INPUT_ABOUT,
+ IDS_CONTENT_CONTEXT_SPEECH_INPUT_ABOUT);
+
+ menu_model_.AddSubMenu(
+ IDC_SPEECH_INPUT_MENU,
+ l10n_util::GetStringUTF16(IDS_CONTENT_CONTEXT_SPEECH_INPUT_MENU),
+ &speech_input_submenu_model_);
+ }
+}
+
#if defined(OS_MACOSX)
void RenderViewContextMenu::AppendBidiSubMenu() {
bidi_submenu_model_.AddCheckItem(IDC_WRITING_DIRECTION_DEFAULT,
@@ -1187,6 +1208,11 @@ bool RenderViewContextMenu::IsCommandIdEnabled(int id) const {
case IDC_SPELLCHECK_MENU:
return true;
+ case IDC_CONTENT_CONTEXT_SPEECH_INPUT_CENSOR_RESULTS:
+ case IDC_CONTENT_CONTEXT_SPEECH_INPUT_ABOUT:
+ case IDC_SPEECH_INPUT_MENU:
+ return true;
+
case IDC_CONTENT_CONTEXT_OPENLINKWITH:
return true;
@@ -1247,6 +1273,11 @@ bool RenderViewContextMenu::IsCommandIdChecked(int id) const {
profile_->GetPrefs()->GetBoolean(prefs::kEnableSpellCheck));
}
+ // Check box for menu item 'Block offensive words'.
+ if (id == IDC_CONTENT_CONTEXT_SPEECH_INPUT_CENSOR_RESULTS) {
+ return profile_->GetPrefs()->GetBoolean(prefs::kSpeechInputCensorResults);
+ }
+
// Don't bother getting the display language vector if this isn't a spellcheck
// language.
if ((id < IDC_SPELLCHECK_LANGUAGES_FIRST) ||
@@ -1664,6 +1695,22 @@ void RenderViewContextMenu::ExecuteCommand(int id) {
break;
}
+ case IDC_CONTENT_CONTEXT_SPEECH_INPUT_CENSOR_RESULTS: {
+ PrefService* prefs = profile_->GetPrefs();
+ const bool censor = !prefs->GetBoolean(prefs::kSpeechInputCensorResults);
+ prefs->SetBoolean(prefs::kSpeechInputCensorResults, censor);
+ break;
+ }
+
+ case IDC_CONTENT_CONTEXT_SPEECH_INPUT_ABOUT: {
+ GURL url(chrome::kSpeechInputAboutURL);
+ GURL localized_url = google_util::AppendGoogleLocaleParam(url);
+ // Open URL with no referrer field (because user clicked on menu item).
+ OpenURL(localized_url, GURL(), 0, NEW_FOREGROUND_TAB,
+ PageTransition::LINK);
+ break;
+ }
+
default:
NOTREACHED();
break;
« no previous file with comments | « chrome/browser/tab_contents/render_view_context_menu.h ('k') | chrome/common/pref_names.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698