Hope things are well. I had this in a folder to look at later, but I wanted to make sure you knew that I added Handlers support to policy, so you shouldn't need this anymore:
https://github.com/mozilla/policy-templates/blob/master/README.md#Handlers Mike On Tue, Oct 22, 2019 at 7:28 AM James Pearson <[email protected]> wrote: > Thanks - that workaround appears to work fine for me as well > > James Pearson > > Mike Kaply wrote: > > > > It's definitely a bug. It appears to be a timing issue with messing with > protocol handlers too early. > > > > Getting someone to look at it might be tricky since it's not necessarily > a supported mechanism. But here's a workaround to just do it later in the > startup process that works for me: > > > > Components.utils.import("resource://gre/modules/Services.jsm"); > > > > Services.obs.addObserver(function observer(subject, topic, data) { > > // DO ANYTHING YOU NEED TO DO LATER IN STARTUP LIKE PROTOCOL HANDLERS > > Services.obs.removeObserver(observer, topic); > > }, "final-ui-startup"); > > > > I am going to see if I can figure out what caused it though. > > > > Mike > > > > > > > > On Mon, Oct 21, 2019 at 8:34 AM Mike Kaply <[email protected]<mailto: > [email protected]>> wrote: > > I'm definitely investigating it as a bug. > > > > Mike > > > > On Fri, Oct 18, 2019 at 4:16 PM James Pearson < > [email protected]<mailto:[email protected]>> wrote: > > I actually meant: "I can sort-of work around this problem ..." > > > > But I would still like to know if this a bug or something that can be > fixed in the autoconfig file > > > > Thanks > > > > James Pearson > > ________________________________________ > > From: Enterprise [[email protected]<mailto: > [email protected]>] on behalf of James Pearson [ > [email protected]<mailto:[email protected]>] > > Sent: 16 October 2019 14:41 > > To: Mike Kaply > > Cc: [email protected]<mailto:[email protected]> > > Subject: Re: [Mozilla Enterprise] Problem with custom protocol handler > in autoconfig file and ESR 68 > > > > I can't sort-of work around this problem by checking for a custom pref > > in the autoconfig file - and don't set up the custom protocol handler if > > this pref doesn't exist, but set this custom pref. On subsequent runs of > > Firefox, as the custom pref exists and is set, the custom protocol > > handler is set up > > > > This does mean that the custom protocol handler doesn't work on the > > first run, but all works as expected on subsequent runs ... > > > > Is this a bug I should report - or is it something that should be > > 'fixed' (somehow?) in the autoconfig file ? > > > > Thanks > > > > James Pearson > > > > James Pearson wrote: > >> > >> pdfjs.disabled is set to false > >> > >> Thanks > >> > >> James Pearson > >> > >> Mike Kaply wrote: > >>> > >>> That's quite strange. > >>> > >>> Are you sure you're not somehow accidentally turning it off? > >>> > >>> What do you see for the value of pdfjs.disabled when you go to > >>> about:config? > >>> > >>> Mike > >>> > >>> On Tue, Oct 15, 2019 at 10:25 AM James Pearson > >>> <[email protected]<mailto:[email protected]><mailto: > [email protected]<mailto:[email protected]>>> wrote: > >>> This is really aimed at Mike Kaply ... > >>> > >>> Many years ago on this list, Mike provided the 'magic' to add a custom > >>> protocol handler in an autoconfig cfg file - the archives of this list > >>> don't go back to 2014, so I can't link to the original thread - but > what > >>> is needed is something like this: > >>> > >>> const Cc = Components.classes; > >>> const Ci = Components.interfaces; > >>> var extProtocolSvc = > >>> Cc["@mozilla.org/uriloader/external-protocol-service;1< > http://mozilla.org/uriloader/external-protocol-service;1>< > http://mozilla.org/uriloader/external-protocol-service;1 > >"].getService(Ci.nsIExternalProtocolService); > >>> > >>> var handlerSvc = > >>> Cc["@mozilla.org/uriloader/handler-service;1< > http://mozilla.org/uriloader/handler-service;1>< > http://mozilla.org/uriloader/handler-service;1 > >"].getService(Ci.nsIHandlerService); > >>> > >>> > >>> var handlerInfo = > extProtocolSvc.getProtocolHandlerInfo("yourprotocol"); > >>> > >>> var file = > >>> Cc["@mozilla.org/file/local;1<http://mozilla.org/file/local;1>< > http://mozilla.org/file/local;1>"].createInstance(Ci.nsIFile); > >>> > >>> // This should be the path to the .app file on Mac or the EXE on > Windows > >>> file.initWithPath("/Applications/Preview.app"); > >>> var localHandlerApp = > >>> Cc["@mozilla.org/uriloader/local-handler-app;1< > http://mozilla.org/uriloader/local-handler-app;1>< > http://mozilla.org/uriloader/local-handler-app;1 > >"].createInstance(Ci.nsILocalHandlerApp); > >>> > >>> localHandlerApp.executable = file; > >>> // The name that will be shown in preferences. > >>> // Not used on Mac > >>> localHandlerApp.name = "Preview"; > >>> handlerInfo.possibleApplicationHandlers.appendElement(localHandlerApp, > >>> false); > >>> handlerInfo.preferredAction = Ci.nsIHandlerInfo.useHelperApp; > >>> handlerInfo.preferredApplicationHandler = localHandlerApp; > >>> handlerInfo.alwaysAskBeforeHandling = false; > >>> handlerSvc.store(handlerInfo); > >>> > >>> This has worked fine ever since for us - and works with ESR 68 - > >>> however, it appears to 'break' the built-in PDF viewer > >>> > >>> If I create a new profile with a custom protocol handler defined in the > >>> autoconfig (as above), then the built-in PDF viewer isn't used - you're > >>> given the option to open the PDF file in an external viewer instead > >>> > >>> Looking at the Preference Setting for PDF, it is set to 'Always ask' - > >>> changing this to 'Preview in Firefox' just brings up a Save dialog when > >>> clicking on a link to a PDF file > >>> > >>> (The custom protocol handler works fine) > >>> > >>> However, if I create a new profile with an autoconfig that doesn't have > >>> a custom handler defined, start Firefox with that new profile, then > quit > >>> Firefox. Then restart Firefox (using the same profile), but this time > >>> using an autoconfig that has the custom handler defined, then the > >>> built-in PDF viewer works as expected ... as does the custom protocol > >>> handler > >>> git push > > > >>> i.e. defining a custom protocol handler on the first run of Firefox > >>> appears to interfere with/break the built-it PDF viewer > >>> > >>> This is with Firefox ESR 68.1 on Linux > >>> > >>> Any idea what I can do to prevent this happening ? > >>> > >>> Thanks > >>> > >>> James Pearson > >>> _______________________________________________ > >>> Enterprise mailing list > >>> [email protected]<mailto:[email protected]><mailto: > [email protected]<mailto:[email protected]>> > >>> https://mail.mozilla.org/listinfo/enterprise > >>> > >>> To unsubscribe from this list, please visit > >>> https://mail.mozilla.org/listinfo/enterprise or send an email to > >>> [email protected]<mailto:[email protected] > ><mailto:[email protected]<mailto: > [email protected]>> > >>> with a subject of "unsubscribe" > >>> > >> > >> _______________________________________________ > >> Enterprise mailing list > >> [email protected]<mailto:[email protected]> > >> https://mail.mozilla.org/listinfo/enterprise > >> > >> To unsubscribe from this list, please visit > >> https://mail.mozilla.org/listinfo/enterprise or send an email to > >> [email protected]<mailto:[email protected]> > with a subject of "unsubscribe" > > > > _______________________________________________ > > Enterprise mailing list > > [email protected]<mailto:[email protected]> > > https://mail.mozilla.org/listinfo/enterprise > > > > To unsubscribe from this list, please visit > https://mail.mozilla.org/listinfo/enterprise or send an email to > [email protected]<mailto:[email protected]> > with a subject of "unsubscribe" > > > >
_______________________________________________ Enterprise mailing list [email protected] https://mail.mozilla.org/listinfo/enterprise To unsubscribe from this list, please visit https://mail.mozilla.org/listinfo/enterprise or send an email to [email protected] with a subject of "unsubscribe"

