Open Bug 954200 Opened 11 years ago Updated 2 years ago

Make protocol extensions restartless

Categories

(Chat Core :: General, enhancement)

x86
All
enhancement

Tracking

(Not tracked)

People

(Reporter: benediktp, Unassigned)

References

(Depends on 1 open bug)

Details

Attachments

(1 file)

*** Original post on bio 766 at 2011-04-28 15:17:00 UTC ***

I was trying to make Omegle into a restartless addon and failed because it seems that purple core service can't handle protocol plugins added after starting.

It would be great if we could have restartless protocol plugins and it seems we need a way that they can register and unregister themselves with purpleCoreService.

(Registering the component itself and adding it to the js-protocol-plugin category worked fine by the way)
*** Original post on bio 766 at 2011-04-28 15:23:46 UTC ***

unregister might also need to handle a connected/created account btw, it could possibly just call disconnect on the account and assume that everything is cleaned up automatically at that point. (Could also delete the account perhaps?)
*** Original post on bio 766 at 2011-04-28 20:56:14 UTC ***

(In reply to comment #1)
> unregister might also need to handle a connected/created account btw, it could
> possibly just call disconnect on the account and assume that everything is
> cleaned up automatically at that point. (Could also delete the account
> perhaps?)

I don't think we should delete the account. It should rather create an instance of an account using the the 'unknown protocol' protocol.
Summary: Allow to register and unregister protocol plugins with purpleCoreService → Make protocol extensions restartless
*** Original post on bio 766 at 2011-12-09 14:53:54 UTC ***

We can use chrome.manifest-registered skins for the icon resources of restartless extensions since we moved to Mozilla 8 (see here how it is done with moz8-9: https://developer.mozilla.org/en/Extensions/Bootstrapped_extensions#Adding_user_interface_with_a_chrome.manifest, as far as I know this won't be necessary anymore when we move to Mozilla 10 which automatically (un)registers chrome.manifests when starting or stopping such an extension).

I haven't tried to register a protocol component 'manually' again (that's not supported from chrome.manifests (yet?)) and will do that later.
Attached file Omegle Restartless
*** Original post on bio 766 as attmnt 1329 at 2012-04-11 13:12:00 UTC ***

This is an example how to register your protocol.

Unregistering the component doesn't work for some reason, even though I call to unregister the factory. It doesn't disconnect accounts neither and does nothing with already existing accounts.
Removing the entry from the category does work, though (i.e. you'll only see the protocol in the list of "Create New Account" when it's installed and active).
Depends on: 1227973
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: