Chromium Code Reviews| Index: chrome/browser/extensions/platform_app_launcher.cc |
| diff --git a/chrome/browser/extensions/platform_app_launcher.cc b/chrome/browser/extensions/platform_app_launcher.cc |
| index 66466ff4130a45e8650dac77673ee1e231c8fe20..4ab888ec57ba4ac946d785157e3a85876bd2e0b9 100644 |
| --- a/chrome/browser/extensions/platform_app_launcher.cc |
| +++ b/chrome/browser/extensions/platform_app_launcher.cc |
| @@ -14,6 +14,8 @@ |
| #include "chrome/browser/extensions/api/app_runtime/app_runtime_api.h" |
| #include "chrome/browser/extensions/api/file_handlers/app_file_handler_util.h" |
| #include "chrome/browser/extensions/api/file_system/file_system_api.h" |
| +#include "chrome/browser/extensions/event_names.h" |
| +#include "chrome/browser/extensions/event_router.h" |
| #include "chrome/browser/extensions/extension_host.h" |
| #include "chrome/browser/extensions/extension_prefs.h" |
| #include "chrome/browser/extensions/extension_process_manager.h" |
| @@ -415,9 +417,18 @@ void RestartPlatformAppWithFileEntries( |
| Profile* profile, |
| const Extension* extension, |
| const std::vector<SavedFileEntry>& file_entries) { |
| - scoped_refptr<SavedFileEntryLauncher> launcher = new SavedFileEntryLauncher( |
| - profile, extension, file_entries); |
| - launcher->Launch(); |
| + bool listening_to_restart = ExtensionSystem::Get(profile)->event_router()-> |
| + ExtensionHasEventListener(extension->id(), |
| + event_names::kOnRestarted); |
| + |
| + if (listening_to_restart) { |
| + scoped_refptr<SavedFileEntryLauncher> launcher = new SavedFileEntryLauncher( |
| + profile, extension, file_entries); |
| + launcher->Launch(); |
| + } else { |
| + // If the app isn't listening to onRestarted just launch the app. |
| + LaunchPlatformApp(profile, extension, NULL, base::FilePath()); |
|
not at google - send to devlin
2013/04/19 14:16:52
Should this be LaunchPlatformAppWithNoData?
koz (OOO until 15th September)
2013/04/21 23:33:03
Done.
|
| + } |
| } |
| } // namespace extensions |