Currently, you can't register a handler for linkpassword://
with WebExtensions.
As for now only the specified whitelisted protocols are allowed to be used without a prefix (one of bitcoin
, geo
, gopher
, im
, irc
, ircs
, magnet
, mailto
, mms
, news
, nntp
, sip
, sms
, smsto
, ssh
, tel
, urn
, webcal
, wtai
, xmpp
). Any other custom name requires to be prefixed with either web+
or ext+
. See protocol_handlers reference.
With the prefix you can register it this way:
"protocol_handlers": [
{
"protocol" : "ext+linkpassword",
"name" : "Password Link",
"uriTemplate": "html/processLink.html#login=%s"
}
],
Then you'll have to use ext+linkpassword://
in your links to trigger the handler.
While with the current state of WebExtensions you can't set a handler for an arbitrary protocol, like linkpassword://
, it is likely to change at some point, since there are some discussions about it, but it's hard to say when to expect this. As a temporary workaround before the real solution is available you can patch linkpassword://
to ext+linkpassword://
on the web page with your WebExtension JS code so that the handler is still triggered even if the links on the page were loaded with the linkpassword://
schema.