This is one of the odd functions which doesn't have an explicit reason, even the MDN which is derived from the Chromium interface does not have a good reason other than browser unity.
> "I'm less worried about (1). As you said, if it was evil to start with, I don't think we're extending it's capabilities much here. The bigger concern I'd have is if this somehow had the ability to interfere with the actual uninstall behavior. For example, I wouldn't want it to be able to pop up any dialogs, to delay the install by blocking, or to live beyond the livespan of the event's synchronous behavior. Uninstall should still synchronously result in the extension being uninstalled. Even if we designed it with this behavior, I'd be a bit worried about bugs that an attacker could exploit. I don't want to be in a situation where extensions are considered persistent malware.
For (2), one option would be that we could allow the extension to set some uninstall cookie (e.g. chrome.extension.setUninstallToken("xxx")) which could be made available to the uninstall page".
Cheers,
Deco