Remove run-time dependencies on X11 backend with GTK3

As with Wayland, the X11 backend may not be available at run-time,
so types defined in it can't be used
This commit is contained in:
Paul Cornett
2021-03-24 11:25:01 -07:00
parent afc3aa773a
commit 0995797158
2 changed files with 8 additions and 4 deletions

View File

@@ -32,16 +32,19 @@ inline gpointer wxGtkGetIdFromWidget(GtkWidget* widget)
GdkWindow* window = gtk_widget_get_window(widget);
wxASSERT(window);
#ifdef __WXGTK3__
const char* name = g_type_name(G_TYPE_FROM_INSTANCE(window));
#endif
#ifdef GDK_WINDOWING_X11
#ifdef __WXGTK3__
if ( GDK_IS_X11_WINDOW(window) )
if (strcmp("GdkX11Window", name) == 0)
#endif
{
return (gpointer)GDK_WINDOW_XID(window);
}
#endif
#ifdef GDK_WINDOWING_WAYLAND
if ( GDK_IS_WAYLAND_WINDOW(window) )
if (strcmp("GdkWaylandWindow", name) == 0)
{
return (gpointer)gdk_wayland_window_get_wl_surface(window);
}