From 2dd407609b8987634180c045e9a6d131db6f947e Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Mon, 17 Aug 2015 21:54:41 -0700 Subject: [PATCH] use gtk_show_uri() in wxLaunchDefaultBrowser() implementation for GTK+ (cherry picked from commit 22eec388068044b9ea3c9fd1539d6686574a32df) --- src/unix/utilsx11.cpp | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/unix/utilsx11.cpp b/src/unix/utilsx11.cpp index 12ff73e..7d5811a 100644 --- a/src/unix/utilsx11.cpp +++ b/src/unix/utilsx11.cpp @@ -36,10 +36,11 @@ #endif #ifdef __WXGTK__ -#include +#include #ifdef GDK_WINDOWING_X11 #include #endif +GdkWindow* wxGetTopLevelGDK(); #endif // Only X11 backend is supported for wxGTK here @@ -887,6 +888,19 @@ bool wxDoLaunchDefaultBrowser(const wxString& url, int flags) { wxUnusedVar(flags); +#ifdef __WXGTK__ +#if GTK_CHECK_VERSION(2,14,0) +#ifndef __WXGTK3__ + if (gtk_check_version(2,14,0) == NULL) +#endif + { + GdkScreen* screen = gdk_window_get_screen(wxGetTopLevelGDK()); + if (gtk_show_uri(screen, url.utf8_str(), GDK_CURRENT_TIME, NULL)) + return true; + } +#endif // GTK_CHECK_VERSION(2,14,0) +#endif // __WXGTK__ + // Our best best is to use xdg-open from freedesktop.org cross-desktop // compatibility suite xdg-utils // (see http://portland.freedesktop.org/wiki/) -- this is installed on