summaryrefslogtreecommitdiffstats
path: root/chrome/browser
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser')
-rw-r--r--chrome/browser/browser_resources.grd2
-rw-r--r--chrome/browser/profiles/profile_impl.cc14
-rw-r--r--chrome/browser/resources/access_chromevox/manifest.json26
3 files changed, 42 insertions, 0 deletions
diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resources.grd
index 46cb09e..907deb4 100644
--- a/chrome/browser/browser_resources.grd
+++ b/chrome/browser/browser_resources.grd
@@ -101,6 +101,8 @@ without changes to the corresponding grd file. etaa -->
<include name="IDR_NETWORK_MENU_JS" file="resources\network_menu.js" flattenhtml="true" type="BINDATA" />
<include name="IDR_WRENCH_MENU_JS" file="resources\wrench_menu.js" flattenhtml="true" type="BINDATA" />
<include name="IDR_WRENCH_MENU_CSS" file="resources\wrench_menu.css" flattenhtml="true" type="BINDATA" />
+ <!-- manifest file of ChromeVox accessibility extension -->
+ <include name="IDR_CHROMEVOX_MANIFEST" file="resources\access_chromevox\manifest.json" type="BINDATA" />
</if>
</includes>
</release>
diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc
index 3b540d1..05e0436 100644
--- a/chrome/browser/profiles/profile_impl.cc
+++ b/chrome/browser/profiles/profile_impl.cc
@@ -406,6 +406,20 @@ void ProfileImpl::RegisterComponentExtensions() {
extensions_service_->register_component_extension(
ExtensionService::ComponentExtensionInfo(manifest, path));
}
+
+#if defined(OS_CHROMEOS)
+ // Register access extensions only if accessibility is enabled.
+ if (g_browser_process->local_state()->
+ GetBoolean(prefs::kAccessibilityEnabled)) {
+ FilePath path = FilePath(extension_misc::kAccessExtensionPath)
+ .AppendASCII("access_chromevox");
+ std::string manifest =
+ ResourceBundle::GetSharedInstance().GetRawDataResource(
+ IDR_CHROMEVOX_MANIFEST).as_string();
+ extensions_service_->register_component_extension(
+ ExtensionService::ComponentExtensionInfo(manifest, path));
+ }
+#endif
}
void ProfileImpl::InstallDefaultApps() {
diff --git a/chrome/browser/resources/access_chromevox/manifest.json b/chrome/browser/resources/access_chromevox/manifest.json
new file mode 100644
index 0000000..9d37904
--- /dev/null
+++ b/chrome/browser/resources/access_chromevox/manifest.json
@@ -0,0 +1,26 @@
+{
+ "key": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDltVl1k15pjRzuZfMc3B69inxwm2bZeZ2O8/zFO+NluHnBm3GJ3fzdOoFGJd+M16I8p7zxxQyHeDMfWYASyCeB8XnUEDKjqNLQfCnncsANzHsYoEbYj2nEUML2P13b9q+AAvpCBpAJ4cZp81e9n1y/vbSXHE4385cgkKueItzikQIDAQAB",
+ "name": "ChromeVox",
+ "version": "1.0",
+ "description": "ChromeVox - Giving Voice to Chrome.",
+ "background_page": "chromevox/background/background.html",
+ "permissions": [
+ "bookmarks",
+ "tabs",
+ "experimental",
+ "http://*/",
+ "https://*/"
+ ],
+ "content_scripts": [
+ {
+ "matches": [ "<all_urls>" ],
+ "all_frames": true,
+ "js": [
+ "build/build_defs.js",
+ "build/build_config_chrome.js",
+ "chromevox/injected/main.js",
+ "common/extension_bridge.js"
+ ]
+ }
+ ]
+} \ No newline at end of file