| Index: chrome/browser/extensions/extensions_ui.h
|
| diff --git a/chrome/browser/extensions/extensions_ui.h b/chrome/browser/extensions/extensions_ui.h
|
| index 80ddf4db31bcbb7362b41e758179ad7d163ec784..908c9f3f1cf38a9705ae6634cdd8b3e097a97611 100644
|
| --- a/chrome/browser/extensions/extensions_ui.h
|
| +++ b/chrome/browser/extensions/extensions_ui.h
|
| @@ -10,6 +10,7 @@
|
|
|
| #include "chrome/browser/dom_ui/chrome_url_data_manager.h"
|
| #include "chrome/browser/dom_ui/dom_ui.h"
|
| +#include "chrome/browser/extensions/pack_extension_job.h"
|
| #include "chrome/browser/shell_dialogs.h"
|
| #include "chrome/common/notification_observer.h"
|
| #include "chrome/common/notification_registrar.h"
|
| @@ -52,6 +53,7 @@ class ExtensionsUIHTMLSource : public ChromeURLDataManager::DataSource {
|
| class ExtensionsDOMHandler
|
| : public DOMMessageHandler,
|
| public NotificationObserver,
|
| + public PackExtensionJob::Client,
|
| public SelectFileDialog::Listener {
|
| public:
|
| explicit ExtensionsDOMHandler(ExtensionsService* extension_service);
|
| @@ -71,13 +73,13 @@ class ExtensionsDOMHandler
|
| const UserScript& script,
|
| const FilePath& extension_path);
|
|
|
| - private:
|
| -#if defined(OS_WIN)
|
| - // The implementation of this method is platform-specific and defined
|
| - // elsewhere.
|
| - static void ShowPackDialog();
|
| -#endif
|
| + // ExtensionPackJob::Client
|
| + virtual void OnPackSuccess(const FilePath& crx_file,
|
| + const FilePath& key_file);
|
| +
|
| + virtual void OnPackFailure(const std::wstring& message);
|
|
|
| + private:
|
| // Callback for "requestExtensionsData" message.
|
| void HandleRequestExtensionsData(const Value* value);
|
|
|
| @@ -102,6 +104,12 @@ class ExtensionsDOMHandler
|
| // Callback for "autoupdate" message.
|
| void HandleAutoUpdateMessage(const Value* value);
|
|
|
| + // Utility for calling javascript window.alert in the page.
|
| + void ShowAlert(const std::string& message);
|
| +
|
| + // Callback for "selectFilePath" message.
|
| + void HandleSelectFilePathMessage(const Value* value);
|
| +
|
| // SelectFileDialog::Listener
|
| virtual void FileSelected(const FilePath& path,
|
| int index, void* params);
|
| @@ -126,6 +134,9 @@ class ExtensionsDOMHandler
|
| // Used to pick the directory when loading an extension.
|
| scoped_refptr<SelectFileDialog> load_extension_dialog_;
|
|
|
| + // Used to package the extension.
|
| + scoped_refptr<PackExtensionJob> pack_job_;
|
| +
|
| // We monitor changes to the extension system so that we can reload when
|
| // necessary.
|
| NotificationRegistrar registrar_;
|
|
|