Index: chrome/browser/extensions/api/management/management_api.h |
diff --git a/chrome/browser/extensions/api/management/management_api.h b/chrome/browser/extensions/api/management/management_api.h |
index 07553c88a3a10ea9b972647191276a5f008b4548..019926c1df97c6a2290d4c184a57457c4213a558 100644 |
--- a/chrome/browser/extensions/api/management/management_api.h |
+++ b/chrome/browser/extensions/api/management/management_api.h |
@@ -131,9 +131,13 @@ class ManagementUninstallFunction : public AsyncManagementFunction, |
virtual void ExtensionUninstallAccepted() OVERRIDE; |
virtual void ExtensionUninstallCanceled() OVERRIDE; |
- private: |
+ protected: |
virtual ~ManagementUninstallFunction(); |
+ bool DoUninstall(bool show_confirm_dialog); |
+ void set_extension_id(const std::string& extension_id); |
+ |
+ private: |
virtual bool RunImpl() OVERRIDE; |
// If should_uninstall is true, this method does the actual uninstall. |
@@ -145,6 +149,18 @@ class ManagementUninstallFunction : public AsyncManagementFunction, |
scoped_ptr<ExtensionUninstallDialog> extension_uninstall_dialog_; |
}; |
+class ManagementUninstallSelfFunction : public ManagementUninstallFunction { |
koz (OOO until 15th September)
2013/01/29 05:20:26
It's not common for functions to subclass each oth
calamity
2013/01/29 06:06:16
Done.
|
+ public: |
+ DECLARE_EXTENSION_FUNCTION_NAME("management.uninstallSelf"); |
+ |
+ ManagementUninstallSelfFunction(); |
+ |
+ private: |
+ virtual ~ManagementUninstallSelfFunction(); |
+ |
+ virtual bool RunImpl() OVERRIDE; |
+}; |
+ |
class ManagementEventRouter : public content::NotificationObserver { |
public: |
explicit ManagementEventRouter(Profile* profile); |