| Index: chrome/browser/extensions/extension_uninstall_dialog.h
|
| diff --git a/chrome/browser/extensions/extension_uninstall_dialog.h b/chrome/browser/extensions/extension_uninstall_dialog.h
|
| index 086f21962bb06319580e642eacc199ca029f60bd..a817af36fbc9397131c01bf8deab0c24a297fa5c 100644
|
| --- a/chrome/browser/extensions/extension_uninstall_dialog.h
|
| +++ b/chrome/browser/extensions/extension_uninstall_dialog.h
|
| @@ -19,34 +19,45 @@ class ExtensionUninstallDialog : public ImageLoadingTracker::Observer {
|
| class Delegate {
|
| public:
|
| // We call this method to signal that the uninstallation should continue.
|
| - virtual void ExtensionDialogAccepted() = 0;
|
| + virtual void ExtensionUninstallAccepted() = 0;
|
|
|
| // We call this method to signal that the uninstallation should stop.
|
| - virtual void ExtensionDialogCanceled() = 0;
|
| + virtual void ExtensionUninstallCanceled() = 0;
|
|
|
| protected:
|
| virtual ~Delegate() {}
|
| };
|
|
|
| - explicit ExtensionUninstallDialog(Profile* profile);
|
| + // Creates a platform specific implementation of ExtensionUninstallDialog.
|
| + static ExtensionUninstallDialog* Create(
|
| + Profile* profile, Delegate* delegate);
|
| +
|
| virtual ~ExtensionUninstallDialog();
|
|
|
| - // This is called by the extensions management page to verify whether the
|
| - // uninstallation should proceed.
|
| + // This is called to verify whether the uninstallation should proceed.
|
| // Starts the process of showing a confirmation UI, which is split into two.
|
| // 1) Set off a 'load icon' task.
|
| // 2) Handle the load icon response and show the UI (OnImageLoaded).
|
| - void ConfirmUninstall(Delegate* delegate, const Extension* extension);
|
| + void ConfirmUninstall(const Extension* extension);
|
| +
|
| + protected:
|
| + // Constructor used by the derived classes.
|
| + explicit ExtensionUninstallDialog(Profile* profile, Delegate* delegate);
|
| +
|
| + Profile* profile_;
|
| +
|
| + // The delegate we will call Accepted/Canceled on after confirmation dialog.
|
| + Delegate* delegate_;
|
| +
|
| + // The extension we are showing the dialog for.
|
| + const Extension* extension_;
|
| +
|
| + // The extensions icon.
|
| + SkBitmap icon_;
|
|
|
| private:
|
| - // Creates an appropriate ExtensionUninstallDialog for the platform.
|
| - static void Show(Profile* profile,
|
| - Delegate* delegate,
|
| - const Extension* extension,
|
| - SkBitmap* icon);
|
| -
|
| - // Sets the icon that will be used in any UI. If |icon| is NULL, or contains
|
| - // an empty bitmap, then a default icon will be used instead.
|
| + // Sets the icon that will be used in the dialog. If |icon| is NULL, or
|
| + // contains an empty bitmap, then we use a default icon instead.
|
| void SetIcon(SkBitmap* icon);
|
|
|
| // ImageLoadingTracker::Observer:
|
| @@ -54,22 +65,16 @@ class ExtensionUninstallDialog : public ImageLoadingTracker::Observer {
|
| const ExtensionResource& resource,
|
| int index) OVERRIDE;
|
|
|
| - Profile* profile_;
|
| - MessageLoop* ui_loop_;
|
| -
|
| - // The delegate we will call Accepted/Canceled on after confirmation UI.
|
| - Delegate* delegate_;
|
| + // Displays the prompt. This should only be called after loading the icon.
|
| + // The implementations of this method are platform-specific.
|
| + virtual void Show() = 0;
|
|
|
| - // The extension we are showing the UI for.
|
| - const Extension* extension_;
|
| + MessageLoop* ui_loop_;
|
|
|
| // Keeps track of extension images being loaded on the File thread for the
|
| - // purpose of showing the install UI.
|
| + // purpose of showing the dialog.
|
| ImageLoadingTracker tracker_;
|
|
|
| - // The extensions icon.
|
| - SkBitmap icon_;
|
| -
|
| DISALLOW_COPY_AND_ASSIGN(ExtensionUninstallDialog);
|
| };
|
|
|
|
|