|
From: | Richard Frith-Macdonald |
Subject: | Re: RSS/RDF Aggregator |
Date: | Wed, 22 Oct 2003 10:33:53 +0100 |
On Monday, October 20, 2003, at 06:17 PM, Chris B. Vetter wrote:
On Sat, 18 Oct 2003 10:10:11 -0700 Alex Perez <aperez@student.santarosa.edu> wrote:On Oct 18, 2003, at 9:56 AM, Marcus Müller wrote:[snip] However, as I said, NSWorkspace (in GNUstep) doesn't implement opening of NSURLs. So, don't expect to see anything more besides the headlines - that is, until someone implements this functionality.Would anyone be willing to implement this properly under GNUstep?This isn't entirely correct (but isn't entirely wrong either). NSWorkspace -openURL: checks whether the given argument is a file, and if it is, tries to open it (or notifies the appropriate application to open it). If it is a url, it returns NO. In this case, the example services should kick in, which try to launch 'mozilla', which isn't necessarily installed. However, the example services will check whether 'NSWebBrowser' is set and use the specified web browser instead of 'mozilla'. In most cases this should work fine, though I'm not entirely convinced that this is the way it should be implemented.
It sounds like quite a nice solution to me too ... but I'm not sure it's the
'right' way either. The example services were just written as examples of how to write services, so making them a core part of NSWorkspace functionality might not be the best thing to do. Perhaps we could have some user default specifying applications to be used to open particular url schemes, and have NSWorkspace launch those applications directly? eg a GSUrlOpeners user default whose value is a dictionary mapping url schemes to application names and with a default application - GSUrlOpeners = { http = mozilla; ftp = ftpbrowser; "" = mozilla; // default used if required scheme is not present } Actually, I don't know how MacOS-X does it ... another interpretation might be that the data from the referenced location should be retrieved and stored in a temporary file, than an application launched to openthat file. I don't *think* that's the purpose of the method ... does anyone
know?
[Prev in Thread] | Current Thread | [Next in Thread] |