Closed Bug 732005 Opened 12 years ago Closed 6 years ago

Allow third party add-ons to specify their own uninstall button

Categories

(Toolkit :: Add-ons Manager, defect)

10 Branch
x86_64
Windows 7
defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: mkaply, Unassigned)

Details

One of the primary complaints of third party add-ons is that they can't be installed from within Firefox.

A lot of these add-ons do have uninstallers, they are just invoked through the Control Panel on Windows.

What if we provided a way for the uninstall button in the add-ons manager to be hooked up to a native uninstall?

that would allow third party add-ons to be uninstallable from Firefox?
This is a great idea!  There are countless "how do I uninstall add-on X from Firefox?" articles on the web.
I'm thinking that rather than specifying an executable, per say, an add-on should be able to somehow mark it's install.rdf as "self uninstallable".

Then maybe we enable the uninstall button, but when clicked, a message is sent to the add-on which can then invoke it's uninstall?

Just my first thought.
Might be wrong but I seem to recall a bug for this being around before, I suspect it doesn't have much in it though.

(In reply to Michael Kaply (mkaply) from comment #2)
> I'm thinking that rather than specifying an executable, per say, an add-on
> should be able to somehow mark it's install.rdf as "self uninstallable".
> 
> Then maybe we enable the uninstall button, but when clicked, a message is
> sent to the add-on which can then invoke it's uninstall?

That seems like a pretty good idea, maybe an observer topic or even just have the add-on register a callback for the uninstall button. The UX concerns me a little, the add-on will have to signal back to us whether the uninstall was successful or not (users can cancel the uninstall of most apps f.e.). It's unlikely we'd be able to support undoing the uninstall like we do for profile add-ons.

More difficult is that the add-on uninstaller could try to remove the add-on's files, but likely won't be able to if Firefox is still running and if it can it may leave Firefox misbehaving as it still tries to use the now missing files. Off the top of my head the simple way to handle that would be to exit Firefox the moment the user chooses to uninstall and trust that the uninstall will re-launch us, but that's not a great experience for the user.
Even if it just invoked the add-on and the uninstall said the user had to close Firefox to finish, might work.
And for add-ons that don't implement this, we could still show the "uninstall" button, and if the user clicked on it we could pop up a message saying "this can't be uninstalled within Firefox, please uninstall it via the Control Panel", or something like that.  We could even link to a SUMO article.
(In reply to Michael Kaply (mkaply) from comment #2)
> I'm thinking that rather than specifying an executable, per say, an add-on
> should be able to somehow mark it's install.rdf as "self uninstallable".
> 
> Then maybe we enable the uninstall button, but when clicked, a message is
> sent to the add-on which can then invoke it's uninstall?

This is already possible via a roundabout way via AddonListener.onInstalling:

https://developer.mozilla.org/en/Addons/Add-on_Manager/AddonListener

You just need to put some foo in your uninstall code to check it is your one being uninstalled (check id).

But there are still the caveats mentioned in comment 3.
But the problem is you don't even get the uninstall button if you are a third party addon.
A commenter on my blog suggested that the "uninstall" button just set some bit that causes Firefox to ignore the third-party add-on.  The files would still be there, but the add-on would be effectively uninstalled.
(In reply to Nicholas Nethercote [:njn] from comment #8)
> A commenter on my blog suggested that the "uninstall" button just set some
> bit that causes Firefox to ignore the third-party add-on.  The files would
> still be there, but the add-on would be effectively uninstalled.

That's been brought up a lot and is covered by bug 640775
After over 5 years of no comments, closing due to lack of activity. If this is going to be something someone plans on working on then please comment and we'll re-open.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.