| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef APPS_LAUNCHER_H_ | 5 #ifndef APPS_LAUNCHER_H_ |
| 6 #define APPS_LAUNCHER_H_ | 6 #define APPS_LAUNCHER_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| 11 #include "extensions/common/constants.h" |
| 12 |
| 11 class GURL; | 13 class GURL; |
| 12 class Profile; | 14 class Profile; |
| 13 | 15 |
| 14 namespace base { | 16 namespace base { |
| 15 class CommandLine; | 17 class CommandLine; |
| 16 class FilePath; | 18 class FilePath; |
| 17 } | 19 } |
| 18 | 20 |
| 19 namespace extensions { | 21 namespace extensions { |
| 20 class Extension; | 22 class Extension; |
| 21 } | 23 } |
| 22 | 24 |
| 23 namespace apps { | 25 namespace apps { |
| 24 | 26 |
| 25 // Launches the platform app |extension|. Creates appropriate launch data for | 27 // Launches the platform app |extension|. Creates appropriate launch data for |
| 26 // the |command_line| fields present. |extension| and |profile| must not be | 28 // the |command_line| fields present. |extension| and |profile| must not be |
| 27 // NULL. An empty |command_line| means there is no launch data. If non-empty, | 29 // NULL. An empty |command_line| means there is no launch data. If non-empty, |
| 28 // |current_directory| is used to expand any relative paths on the command line. | 30 // |current_directory| is used to expand any relative paths on the command line. |
| 31 // |source| is one of the enumerated values which trace how the app is launched. |
| 29 void LaunchPlatformAppWithCommandLine(Profile* profile, | 32 void LaunchPlatformAppWithCommandLine(Profile* profile, |
| 30 const extensions::Extension* extension, | 33 const extensions::Extension* extension, |
| 31 const base::CommandLine& command_line, | 34 const base::CommandLine& command_line, |
| 32 const base::FilePath& current_directory); | 35 const base::FilePath& current_directory, |
| 36 extensions::AppLaunchSource source); |
| 33 | 37 |
| 34 // Launches the platform app |extension| by issuing an onLaunched event | 38 // Launches the platform app |extension| by issuing an onLaunched event |
| 35 // with the contents of |file_path| available through the launch data. | 39 // with the contents of |file_path| available through the launch data. |
| 36 void LaunchPlatformAppWithPath(Profile* profile, | 40 void LaunchPlatformAppWithPath(Profile* profile, |
| 37 const extensions::Extension* extension, | 41 const extensions::Extension* extension, |
| 38 const base::FilePath& file_path); | 42 const base::FilePath& file_path); |
| 39 | 43 |
| 40 // Launches the platform app |extension| with no launch data. | 44 // Launches the platform app |extension|. |source| tells us how the app is |
| 45 // launched. |
| 41 void LaunchPlatformApp(Profile* profile, | 46 void LaunchPlatformApp(Profile* profile, |
| 42 const extensions::Extension* extension); | 47 const extensions::Extension* extension, |
| 48 extensions::AppLaunchSource source); |
| 43 | 49 |
| 44 // Launches the platform app |extension| with |handler_id| and the contents of | 50 // Launches the platform app |extension| with |handler_id| and the contents of |
| 45 // |file_paths| available through the launch data. |handler_id| corresponds to | 51 // |file_paths| available through the launch data. |handler_id| corresponds to |
| 46 // the id of the file_handlers item in the manifest that resulted in a match | 52 // the id of the file_handlers item in the manifest that resulted in a match |
| 47 // that triggered this launch. | 53 // that triggered this launch. |
| 48 void LaunchPlatformAppWithFileHandler( | 54 void LaunchPlatformAppWithFileHandler( |
| 49 Profile* profile, | 55 Profile* profile, |
| 50 const extensions::Extension* extension, | 56 const extensions::Extension* extension, |
| 51 const std::string& handler_id, | 57 const std::string& handler_id, |
| 52 const std::vector<base::FilePath>& file_paths); | 58 const std::vector<base::FilePath>& file_paths); |
| 53 | 59 |
| 54 // Launches the platform app |extension| with |handler_id|, |url| and | 60 // Launches the platform app |extension| with |handler_id|, |url| and |
| 55 // |referrer_url| available through the launch data. |handler_id| corresponds to | 61 // |referrer_url| available through the launch data. |handler_id| corresponds to |
| 56 // the id of the file_handlers item in the manifest that resulted in a match | 62 // the id of the file_handlers item in the manifest that resulted in a match |
| 57 // that triggered this launch. | 63 // that triggered this launch. |
| 58 void LaunchPlatformAppWithUrl(Profile* profile, | 64 void LaunchPlatformAppWithUrl(Profile* profile, |
| 59 const extensions::Extension* extension, | 65 const extensions::Extension* extension, |
| 60 const std::string& handler_id, | 66 const std::string& handler_id, |
| 61 const GURL& url, | 67 const GURL& url, |
| 62 const GURL& referrer_url); | 68 const GURL& referrer_url); |
| 63 | 69 |
| 64 void RestartPlatformApp(Profile* profile, | 70 void RestartPlatformApp(Profile* profile, |
| 65 const extensions::Extension* extension); | 71 const extensions::Extension* extension); |
| 66 | 72 |
| 67 } // namespace apps | 73 } // namespace apps |
| 68 | 74 |
| 69 #endif // APPS_LAUNCHER_H_ | 75 #endif // APPS_LAUNCHER_H_ |
| OLD | NEW |