summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhashimoto@chromium.org <hashimoto@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-14 06:11:15 +0000
committerhashimoto@chromium.org <hashimoto@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-14 06:11:15 +0000
commitda87b733e860433b50d37322a9f358b6d42e7d7e (patch)
treed9f564e0774777d771f7fd2cbab26067baf25607
parentdfee7aab8f76589223ddc568b2a20b18dafaba63 (diff)
downloadchromium_src-da87b733e860433b50d37322a9f358b6d42e7d7e.zip
chromium_src-da87b733e860433b50d37322a9f358b6d42e7d7e.tar.gz
chromium_src-da87b733e860433b50d37322a9f358b6d42e7d7e.tar.bz2
Set INJECTED_AFTER_LOAD for ChromeVox
BUG=chromium-os:21373 TEST=Press Ctrl+Alt+Z on login screen to enable ChromeVox, listen to it speaking "Enabling spoken feedback" without any interrupt. Review URL: http://codereview.chromium.org/8916001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114377 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/chromeos/accessibility/accessibility_util.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/chrome/browser/chromeos/accessibility/accessibility_util.cc b/chrome/browser/chromeos/accessibility/accessibility_util.cc
index 27f08ea..2ed45ab 100644
--- a/chrome/browser/chromeos/accessibility/accessibility_util.cc
+++ b/chrome/browser/chromeos/accessibility/accessibility_util.cc
@@ -118,6 +118,19 @@ void EnableAccessibility(bool enabled, WebUI* login_web_ui) {
if (login_web_ui) {
RenderViewHost* render_view_host =
login_web_ui->tab_contents()->render_view_host();
+ // Set a flag to tell ChromeVox that it's just been enabled,
+ // so that it won't interrupt our speech feedback enabled message.
+ ExtensionMsg_ExecuteCode_Params params;
+ params.request_id = 0;
+ params.extension_id = extension->id();
+ params.is_javascript = true;
+ params.code = "window.INJECTED_AFTER_LOAD = true;";
+ params.all_frames = true;
+ params.in_main_world = false;
+ render_view_host->Send(new ExtensionMsg_ExecuteCode(
+ render_view_host->routing_id(), params));
+
+ // Inject ChromeVox' content scripts.
ContentScriptLoader* loader = new ContentScriptLoader(
extension->id(), render_view_host);