summaryrefslogtreecommitdiffstats
path: root/chrome/common/extensions/extension_constants.cc
diff options
context:
space:
mode:
authorzelidrag@chromium.org <zelidrag@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-04-16 08:39:20 +0000
committerzelidrag@chromium.org <zelidrag@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-04-16 08:39:20 +0000
commit76066e5180a794b39d8f9550937b37b05f7793e8 (patch)
tree7b8a709544d0293808452ac622f01a0de195f013 /chrome/common/extensions/extension_constants.cc
parentcb23cdd5107b3f809f1a5a04a99098842364a15b (diff)
downloadchromium_src-76066e5180a794b39d8f9550937b37b05f7793e8.zip
chromium_src-76066e5180a794b39d8f9550937b37b05f7793e8.tar.gz
chromium_src-76066e5180a794b39d8f9550937b37b05f7793e8.tar.bz2
New fileBrowserPrivate and fileHandler APIs added + plus magic needed to safely hand over access to local file system elements from content extension to 3rd party extension.
As agreed with aa@ and asargent@, this new API defines following event: chrome.fileHandler.onExecute.addListener(function(id, file_entries) { } This event is invoked when user selects files in ChromeOS file browser. The extension needs to register itself as file content hanlder with following manifest changes: ... "file_browser_actions": [ { "id" : "ActionIdentifier", "default_title" : "Action title", "default_icon" : "icon.png", "file_filters" : [ "filesystem:*.jpeg", ... ] } ... ], ... BUG=chromium-os:11996 TEST=ExtensionApiTest.FileBrowserTest, ExtensionManifestTest.FileBrowserActions Review URL: http://codereview.chromium.org/6749021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81865 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/extensions/extension_constants.cc')
-rw-r--r--chrome/common/extensions/extension_constants.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/chrome/common/extensions/extension_constants.cc b/chrome/common/extensions/extension_constants.cc
index 27324ef..fc5f4ef 100644
--- a/chrome/common/extensions/extension_constants.cc
+++ b/chrome/common/extensions/extension_constants.cc
@@ -19,6 +19,8 @@ const char* kDefaultLocale = "default_locale";
const char* kDescription = "description";
const char* kDevToolsPage = "devtools_page";
const char* kExcludeGlobs = "exclude_globs";
+const char* kFileFilters = "file_filters";
+const char* kFileBrowserHandlers = "file_browser_handlers";
const char* kHomepageURL = "homepage_url";
const char* kIcons = "icons";
const char* kIncognito = "incognito";
@@ -157,6 +159,12 @@ const char* kInvalidDescription =
"Invalid value for 'description'.";
const char* kInvalidDevToolsPage =
"Invalid value for 'devtools_page'.";
+const char* kInvalidFileBrowserHandler =
+ "Invalid value for 'file_browser_handers'.";
+const char* kInvalidFileFiltersList =
+ "Invalid value for 'file_filters'.";
+const char* kInvalidFileFilterValue =
+ "Invalid value for 'file_filters[*]'.";
const char* kInvalidGlob =
"Invalid value for 'content_scripts[*].*[*]'.";
const char* kInvalidGlobList =
@@ -296,6 +304,8 @@ const char* kInvalidTtsVoicesVoiceName =
"Invalid value for 'tts.voices[*].voiceName'.";
const char* kInvalidUpdateURL =
"Invalid value for update url: '[*]'.";
+const char* kInvalidURLPatternError =
+ "Invalid url pattern '*'";
const char* kInvalidVersion =
"Required value 'version' is missing or invalid. It must be between 1-4 "
"dot-separated integers each between 0 and 65536.";