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@81869 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi
index 99ccea1..1eaea97 100644
--- a/chrome/chrome_browser.gypi
+++ b/chrome/chrome_browser.gypi
@@ -3439,6 +3439,8 @@
             ['exclude', 'browser/ui/webui/filebrowse_ui.cc'],
             ['exclude', 'browser/ui/webui/mediaplayer_ui.cc'],
             ['exclude', 'browser/ui/webui/slideshow_ui.cc'],
+            ['exclude', 'browser/extensions/extension_file_browser_private_api.cc'],
+            ['exclude', 'browser/extensions/extension_file_browser_private_api.h'],
           ],
         }],
         ['chromeos==1', {