diff --git gdk/x11/gdkdisplay-x11.c gdk/x11/gdkdisplay-x11.c index 84a45dc..685a1f9 100644 --- gdk/x11/gdkdisplay-x11.c +++ gdk/x11/gdkdisplay-x11.c @@ -56,7 +56,9 @@ #include #include +#ifdef HAVE_EGL #include +#endif #include #include @@ -2916,6 +2918,7 @@ visual_is_rgba (XVisualInfo *visinfo) visinfo->visual->blue_mask == 0x0000ff; } +#ifdef HAVE_EGL static guint gdk_x11_display_rate_egl_config (GdkDisplay *display, gpointer egl_display, @@ -2942,7 +2945,9 @@ gdk_x11_display_rate_egl_config (GdkDisplay *display, return distance; } +#endif +#ifdef HAVE_EGL static gboolean gdk_x11_display_init_gl_backend (GdkX11Display *self, Visual **out_visual, @@ -2997,6 +3002,26 @@ gdk_x11_display_init_gl_backend (GdkX11Display *self, return TRUE; } +#else /* HAVE_EGL */ + +static gboolean +gdk_x11_display_init_gl_backend (GdkX11Display *self, + Visual **out_visual, + int *out_depth, + GError **error) +{ + GdkDisplay *display = GDK_DISPLAY (self); + Display *dpy = gdk_x11_display_get_xdisplay (GDK_DISPLAY (self)); + XVisualInfo *visinfo; + int visualid; + + if (gdk_x11_display_init_glx (self, out_visual, out_depth, error)) + return TRUE; + else + return FALSE; +} +#endif /* HAVE_EGL */ + static GdkGLContext * gdk_x11_display_init_gl (GdkDisplay *display, @@ -3011,8 +3036,12 @@ gdk_x11_display_init_gl (GdkDisplay *display, if (self->glx_config != NULL) return g_object_new (GDK_TYPE_X11_GL_CONTEXT_GLX, "surface", self->leader_gdk_surface, NULL); + +#ifdef HAVE_EGL else if (gdk_display_get_egl_display (display)) return g_object_new (GDK_TYPE_X11_GL_CONTEXT_EGL, "surface", self->leader_gdk_surface, NULL); +#endif + else g_return_val_if_reached (NULL); } @@ -3048,7 +3077,10 @@ gdk_x11_display_class_init (GdkX11DisplayClass * class) display_class->get_keymap = gdk_x11_display_get_keymap; display_class->init_gl = gdk_x11_display_init_gl; + +#ifdef HAVE_EGL display_class->rate_egl_config = gdk_x11_display_rate_egl_config; +#endif display_class->get_default_seat = gdk_x11_display_get_default_seat; diff --git gdk/x11/meson.build gdk/x11/meson.build index 58d12bb..1e5f9c7 100644 --- gdk/x11/meson.build +++ gdk/x11/meson.build @@ -8,7 +8,6 @@ gdk_x11_public_sources = files([ 'gdkdevicemanager-x11.c', 'gdkdevicemanager-xi2.c', 'gdkdisplay-x11.c', - 'gdkglcontext-egl.c', 'gdkglcontext-glx.c', 'gdkglcontext-x11.c', 'gdkkeys-x11.c', --- meson.build 2026-02-10 21:55:29 +++ meson.build 2026-02-10 21:56:02 @@ -167,8 +155,9 @@ os_unix = not os_win32 if os_darwin + x11_enabled = true + macos_enabled = false wayland_enabled = false - x11_enabled = false else macos_enabled = false endif --- gtk/inspector/general.c.orig 2025-11-20 00:08:31 +++ gtk/inspector/general.c 2026-02-11 13:00:57 @@ -49,7 +49,9 @@ #ifdef GDK_WINDOWING_X11 #include "x11/gdkx.h" #include +#ifdef HAVE_EGL #include +#endif #endif #ifdef GDK_WINDOWING_WIN32 @@ -606,7 +608,7 @@ g_strfreev (items); } -#if defined(GDK_WINDOWING_X11) || defined(GDK_WINDOWING_WAYLAND) || (defined(GDK_WINDOWING_WIN32) && defined(GDK_WIN32_ENABLE_EGL)) +#if (defined(GDK_WINDOWING_X11) && defined (HAVE_EGL)) || defined(GDK_WINDOWING_WAYLAND) || (defined(GDK_WINDOWING_WIN32) && defined(GDK_WIN32_ENABLE_EGL)) static EGLDisplay get_egl_display (GdkDisplay *display) { @@ -669,7 +671,7 @@ gtk_string_list_append (GTK_STRING_LIST (gen->gl_extensions_list), gl_ext); } -#if defined(GDK_WINDOWING_X11) || defined(GDK_WINDOWING_WAYLAND) || (defined(GDK_WINDOWING_WIN32) && defined(GDK_WIN32_ENABLE_EGL)) +#if defined(GDK_WINDOWING_WAYLAND) || (defined (GDK_WINDOWING_X11) && defined (HAVE_EGL)) || (defined (GDK_WINDOWING_WIN32) && defined(GDK_WIN32_ENABLE_EGL)) EGLDisplay egl_display = get_egl_display (gen->display); if (egl_display) { @@ -782,7 +784,7 @@ ext = g_string_new (""); -#if defined(GDK_WINDOWING_X11) || defined(GDK_WINDOWING_WAYLAND) || (defined(GDK_WINDOWING_WIN32) && defined(GDK_WIN32_ENABLE_EGL)) +#if (defined(GDK_WINDOWING_X11) && defined (HAVE_EGL)) || defined(GDK_WINDOWING_WAYLAND) || (defined(GDK_WINDOWING_WIN32) && defined(GDK_WIN32_ENABLE_EGL)) EGLDisplay egl_display = get_egl_display (display); if (egl_display) { --- gtk/gtkcolorpicker.c.orig 2026-02-11 13:20:44 +++ gtk/gtkcolorpicker.c 2026-02-11 13:21:18 @@ -22,10 +22,6 @@ #include "gtkcolorpickershellprivate.h" #include "gtkcolorpickerkwinprivate.h" -#ifdef __APPLE__ -#include "gtkcolorpickerquartzprivate.h" -#endif - #ifdef G_OS_WIN32 #include "gtkcolorpickerwin32private.h" #endif @@ -62,16 +58,13 @@ { GtkColorPicker *picker = NULL; -#if defined (G_OS_UNIX) && !defined(__APPLE__) +#if defined (G_OS_UNIX) if (!picker) picker = gtk_color_picker_portal_new (); if (!picker) picker = gtk_color_picker_shell_new (); if (!picker) picker = gtk_color_picker_kwin_new (); -#elif defined (__APPLE__) - if (!picker) - picker = gtk_color_picker_quartz_new (); #elif defined (G_OS_WIN32) if (!picker) picker = gtk_color_picker_win32_new ();