diff options
author | Lubomir I. Ivanov <neolit123@gmail.com> | 2013-01-15 01:20:29 +0200 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2013-01-15 08:51:32 -0800 |
commit | 678fffdcf497832a366b8230c30fc83794391ece (patch) | |
tree | 1a4b85235f6ef7ed5a763840359ffdbc83454e0a /macos.c | |
parent | 2330f9b379befe4847d77bfd031c273f8883e441 (diff) | |
download | subsurface-678fffdcf497832a366b8230c30fc83794391ece.tar.gz |
Added the OS dependent function subsurface_launch_for_uri()
Opening URI addresses from Subsurface does not work on Windows using
the latest GTK bundle from the Gnome website. The reason lies in GIO
and GLib and how it obtains assigned applications for protocols and MIME
types.
While gtk_show_uri() should be viable for both linux.c and macos.c,
in windows.c ShellExecute() is used, which provides proper support
for the URI calls.
subsurface_launch_for_uri() returns TRUE on success.
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'macos.c')
-rw-r--r-- | macos.c | 12 |
1 files changed, 12 insertions, 0 deletions
@@ -220,3 +220,15 @@ gboolean subsurface_os_feature_available(os_feature_t f) { return TRUE; } + +gboolean subsurface_launch_for_uri(const char* uri) +{ + GError *err = NULL; + gtk_show_uri(NULL, uri, gtk_get_current_event_time(), &err); + if (err) { + g_message("%s: %s", err->message, uri); + g_error_free(err); + return FALSE; + } + return TRUE; +} |