diff options
author | zelidrag@chromium.org <zelidrag@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-16 08:39:20 +0000 |
---|---|---|
committer | zelidrag@chromium.org <zelidrag@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-16 08:39:20 +0000 |
commit | 76066e5180a794b39d8f9550937b37b05f7793e8 (patch) | |
tree | 7b8a709544d0293808452ac622f01a0de195f013 /chrome/common/extensions/extension_constants.cc | |
parent | cb23cdd5107b3f809f1a5a04a99098842364a15b (diff) | |
download | chromium_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.cc | 10 |
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."; |