Have Highlight and Activator installed.
Show the reloader pane.
go to plugin manager. remove highlight plugin. Close plugin manager.
go back to reloader pane.
it still shows highlight plugin button.
Click it. zip exception.
Interesting. This is one of those that is best fixed in the core. Activator could do some kludgy things to figure it out, but the real problem is that a PluginUpdate message isn't sent when a plugin is physically removed from disk.
We could emit one of the existing pluginupdate messages such as UNLOADED when it is removed, and then activator only needs to check the existance of the jar after receiving the message.
That would avoid the need to introduce a new message.
My original thought was to add a 'removed' status to the PluginUpdate message, but PluginUpdate requires a valid PluginJar at the time the message is created. At the point where the message should be created and passed to the EditBus, the PluginJar no longer exists. See Roster.java, around line 220. I think the right way to handle this is to create a new message, PluginRemoved, with the constructor containing the File representing the plugin that was deleted.
As sometimes happens, 30 seconds after posting a comment, I have a different idea. I think a minor modification to PluginUpdate will do it, I'll try that before creating a new message.
I think this is fixed now?