Avoid gtk_show_uri() with GTK+3.9x
This commit is contained in:
parent
23caf6fe00
commit
db00ab9c02
@ -345,6 +345,13 @@ static bool wxGetTopLevel(GtkWidget** widget, GdkWindow** window)
|
||||
return false;
|
||||
}
|
||||
|
||||
GtkWidget* wxGetTopLevelGTK()
|
||||
{
|
||||
GtkWidget* widget = NULL;
|
||||
wxGetTopLevel(&widget, NULL);
|
||||
return widget;
|
||||
}
|
||||
|
||||
GdkWindow* wxGetTopLevelGDK()
|
||||
{
|
||||
GdkWindow* window;
|
||||
|
@ -45,6 +45,7 @@
|
||||
#endif
|
||||
#endif
|
||||
GdkWindow* wxGetTopLevelGDK();
|
||||
GtkWidget* wxGetTopLevelGTK();
|
||||
#endif
|
||||
|
||||
// Only X11 backend is supported for wxGTK here
|
||||
@ -2679,12 +2680,20 @@ bool
|
||||
wxDoLaunchDefaultBrowser(const wxLaunchBrowserParams& params)
|
||||
{
|
||||
#ifdef __WXGTK__
|
||||
#if GTK_CHECK_VERSION(2,14,0)
|
||||
#if GTK_CHECK_VERSION(3,90,0)
|
||||
if (gtk_show_uri_on_window((GtkWindow*)wxGetTopLevelGTK(),
|
||||
params.url.utf8_str(), GDK_CURRENT_TIME, NULL))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
#elif GTK_CHECK_VERSION(2,14,0)
|
||||
if (wx_is_at_least_gtk2(14))
|
||||
{
|
||||
GdkScreen* screen = gdk_window_get_screen(wxGetTopLevelGDK());
|
||||
wxGCC_WARNING_SUPPRESS(deprecated-declarations)
|
||||
if (gtk_show_uri(screen, params.url.utf8_str(), GDK_CURRENT_TIME, NULL))
|
||||
return true;
|
||||
wxGCC_WARNING_RESTORE()
|
||||
}
|
||||
#endif // GTK_CHECK_VERSION(2,14,0)
|
||||
#endif // __WXGTK__
|
||||
|
Loading…
Reference in New Issue
Block a user