Re: Replace gnome_vfs_open_url by gio
- From: Alexander Larsson <alexl redhat com>
- To: Xavier Claessens <xclaesse gmail com>
- Cc: gnome-vfs-list gnome org
- Subject: Re: Replace gnome_vfs_open_url by gio
- Date: Fri, 16 Nov 2007 11:10:37 +0100
On Thu, 2007-11-15 at 16:25 +0100, Xavier Claessens wrote:
> Hello,
>
> I'm trying to get ride of GnomeVFS dependency in Empathy. I'm looking
> for a replacement of gnome_vfs_open_url(), is there an API in gio to do
> the same thing?
There is no simple call for it, but all the ingredients for it is there.
Start by looking at:
GAppInfo *g_app_info_get_default_for_uri_scheme (const char *uri_scheme);
(uri scheme comes from g_file_get_uri_scheme())
If that returns NULL, we must look at the file type, which is done with:
g_file_query_info() or g_file_query_info_async()
(passing G_FILE_ATTRIBUTE_STD_CONTENT_TYPE as attribute)
Then you can get the default from:
GAppInfo *g_app_info_get_default_for_type (const char *content_type,
gboolean must_support_uris);
Clearly these could all go into a helper function:
GAppInfo *g_file_get_default_handler (GFile *file,
GCancellable, *cancellable,
GError **error)
Patches accepted.
Then you can launch the GAppInfo using g_app_info_launch().
For certain features (startup notification, starting on right screen)
you can also pass in a GAppLaunchContext implementation. This is a bit
tricky atm, but in the future such an implementation will be availible
in Gtk+ for simple use.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]