New handling for URI scheme handlers
Bastien Nocera
hadess at hadess.net
Sun Dec 1 23:13:40 PST 2013
On Mon, 2013-12-02 at 00:59 +0100, David Faure wrote:
> (very old mail, but this is bugging me again :)
>
> Context: I believe that associating a webbrowser with x-scheme-handler/http is
> wrong.
>
> On Wednesday 06 October 2010 00:38:40 Bastien Nocera wrote:
> > David Faure wrote:
> > > When you click a http URL that
> > > points to an .odt document, you want to launch openoffice, not a
> > > web-browser.
> >
> > If you're already in a web browser, yes, but in this case, the lookup
> > shouldn't be including a scheme handler lookup, just an application that
> > handles that particular mime-type.
>
> But what if you're not in a webbrowser in the first place?
> E.g. in a desktop email application, you click on an HTTP link to a .odt
> document. Should that really start firefox, just so that it can then launch
> openoffice?
> (same with any other content application that can handle HTTP urls on its own;
> same with other schemes that apps might support, like FTP).
>
> Note that at this point we have no clue about the mimetype. We can start a
> download and find it out, but the first question is: should we do that, or
> just blindly trust the app that says it wants all URLs with this scheme (http,
> in my example).
>
> Since we don't want this to happen in KDE, I had to write code such as "if KIO
> supports a scheme and an app exists for the mimetype x-scheme-
> handler/<scheme>, then give priority to KIO". (for the special case of http,
> there is actually a user setting for "send all http urls to this particular
> app", but that's not the default setting).
> I don't like it very much though, it feels like a hack :)
> But I guess it makes sense, since in KDE we prefer to open HTTP urls by
> mimetype, while IIUC in Gnome you prefer to open them with a single scheme-
> associated application (i.e. webbrowser).
>
> So, it's all fine, I'm just curious about what happens in your case when the
> user isn't in a webbrowser in the first place (and to pick the worst case - if
> it's not running yet, which means a long delay coming from the startup of two
> large applications one after the other).
I wish it worked like that as well, but you've just broken one-time URLs
and tried to open a login page in LibreOffice if you don't share cookie
jars between all the clients.
More information about the xdg
mailing list