New handling for URI scheme handlers
hadess at hadess.net
Tue Oct 5 09:36:55 PDT 2010
On Tue, 2010-10-05 at 18:27 +0200, David Faure wrote:
> On Tuesday 05 October 2010, Bastien Nocera wrote:
> > Heya,
> > This morning I implemented in GNOME use of the x-scheme-handler/*
> > mime-type for applications to register their interest in handling
> > particular URI schemes.
> > I posted about it in:
> > http://www.hadess.net/2010/10/new-control-center-and-you.html
> > And have a blocker bug for GNOME applications in:
> > https://bugzilla.gnome.org/show_bug.cgi?id=631433
> > The attached patch is changes to the shared-mime-info spec to mention
> > the use of x-scheme-handler/* mime-types.
> I'm in favour of the addition if it's only used in these special cases you
> mention, where we want to send *all* urls with a given scheme to an
> application, so this indeed *replaces* any mimetype-based lookup.
> This is orthogonal to the use cases like "we have a HTTP URL pointing to an
> image, we need an application which supports image/png -and- which supports
> HTTP" - this is another unresolved issue (in KDE we started using X-KDE-
> Protocols for that, but let's talk about that in another thread, to not mix up
> the issues). In that case both criterias must be met, so x-scheme-handler/http
> would not work if it's just another mimetype, this is why I'm clearly
> separating the two issues.
Right, completely agreed here, though that particular problem isn't so
visible on GNOME, given that we can access files through FUSE when gvfs
supports the protocol/scheme.
> But to come back to your use case, all urls with a given scheme, no mimetype
> at all, then OK. I just hope nobody installs a desktop file with x-scheme-
> handler/http ever...
Apart from web browsers, nothing should. And the cleverness for that
particular codepath is still there.
The main use though would be when applications handle *all* the files on
the URI scheme, such as:
- MMS, RTSP, RTP URIs -> movie player
- FEED, ZCAST, ITPC -> podcast manager
- MAILTO -> mail client
More information about the xdg