Chromium Code Reviews| Index: chrome/browser/ui/webui/options/browser_options_handler.cc |
| diff --git a/chrome/browser/ui/webui/options/browser_options_handler.cc b/chrome/browser/ui/webui/options/browser_options_handler.cc |
| index 91f9c066b7730d0d0b561626d45dd8ab2f7b619d..42460e79a6d7381f16233af104d077260755525b 100644 |
| --- a/chrome/browser/ui/webui/options/browser_options_handler.cc |
| +++ b/chrome/browser/ui/webui/options/browser_options_handler.cc |
| @@ -430,6 +430,8 @@ void BrowserOptionsHandler::GetLocalizedValues(base::DictionaryValue* values) { |
| IDS_OPTIONS_SETTINGS_ACCESSIBILITY_STICKY_KEYS_DESCRIPTION }, |
| { "accessibilitySwitchAccess", |
| IDS_OPTIONS_SETTINGS_ACCESSIBILITY_SWITCH_ACCESS_DESCRIPTION }, |
| + { "accessibilityTalkBackSettings", |
| + IDS_OPTIONS_SETTINGS_ACCESSIBILITY_TALKBACK_SETTINGS }, |
| { "accessibilityTapDragging", |
| IDS_OPTIONS_SETTINGS_ACCESSIBILITY_TOUCHPAD_TAP_DRAGGING_DESCRIPTION }, |
| { "accessibilityVirtualKeyboard", |
| @@ -800,6 +802,10 @@ void BrowserOptionsHandler::RegisterMessages() { |
| "showAndroidAppsSettings", |
| base::Bind(&BrowserOptionsHandler::ShowAndroidAppsSettings, |
| base::Unretained(this))); |
| + web_ui()->RegisterMessageCallback( |
| + "showAccessibilityTalkBackSettings", |
| + base::Bind(&BrowserOptionsHandler::ShowAccessibilityTalkBackSettings, |
| + base::Unretained(this))); |
| #else |
| web_ui()->RegisterMessageCallback( |
| "becomeDefaultBrowser", |
| @@ -1934,6 +1940,18 @@ void BrowserOptionsHandler::ShowAndroidAppsSettings( |
| arc::LaunchAndroidSettingsApp(profile); |
| } |
| +void BrowserOptionsHandler::ShowAccessibilityTalkBackSettings( |
| + const base::ListValue *args) { |
| + Profile* profile = Profile::FromWebUI(web_ui()); |
| + // Settings in secondary profile cannot access ARC. |
| + if (!arc::ArcAuthService::IsAllowedForProfile(profile)) { |
| + LOG(ERROR) << "Settings can't be invoked for non-primary profile"; |
|
stevenjb
2016/08/08 22:41:03
Can this legitimately happen? If so it should just
yhanada
2016/08/09 06:29:40
I changed it to LOG(WARNING). Done.
|
| + return; |
| + } |
| + |
| + arc::ShowTalkBackSettings(); |
| +} |
| + |
| void BrowserOptionsHandler::SetupAccessibilityFeatures() { |
| PrefService* pref_service = g_browser_process->local_state(); |
| base::FundamentalValue virtual_keyboard_enabled( |