Allow platform apps to receive WebIntents.

For this to work they are launched with the web intent data in the launchData
field of the apps onLaunched event.

BUG=130194
TEST=Manual testing with invoking from a normal page and invoking with a download (to an rss app).


Review URL: https://chromiumcodereview.appspot.com/10546142

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@143135 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/extensions/platform_app_launcher.h b/chrome/browser/extensions/platform_app_launcher.h
index 20181cd..b564864 100644
--- a/chrome/browser/extensions/platform_app_launcher.h
+++ b/chrome/browser/extensions/platform_app_launcher.h
@@ -9,6 +9,10 @@
 class CommandLine;
 class Profile;
 
+namespace webkit_glue {
+struct WebIntentData;
+}
+
 namespace extensions {
 
 class Extension;
@@ -20,6 +24,14 @@
                        const Extension* extension,
                        const CommandLine* command_line);
 
+// Launches the platform app |extension| with the supplied web intent. Creates
+// appropriate launch data for the |web_intent_data| field present. |extension|
+// and |profile| must not be NULL.
+void LaunchPlatformAppWithWebIntent(
+    Profile* profile,
+    const Extension* extension,
+    const webkit_glue::WebIntentData& web_intent_data);
+
 }  // namespace extensions
 
 #endif  // CHROME_BROWSER_EXTENSIONS_PLATFORM_APP_LAUNCHER_H_