<pre style='margin:0'>
Ken (kencu) pushed a commit to branch gtk4x11
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/e0425a44bbb884d3fa89cca573113d1574aaf803">https://github.com/macports/macports-ports/commit/e0425a44bbb884d3fa89cca573113d1574aaf803</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit e0425a44bbb884d3fa89cca573113d1574aaf803
</span>Author: Ken <21211439+kencu@users.noreply.github.com>
AuthorDate: Wed Aug 24 16:02:36 2022 -0700
<span style='display:block; white-space:pre;color:#404040;'> gtk4: initial attempt at x11 support on macOS
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> remove or block the places where egl support is assumed.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> note windows (32 at least) already does have an EGL test
</span><span style='display:block; white-space:pre;color:#404040;'> so we might copy that
</span>---
gnome/gtk4/Portfile | 23 +-
gnome/gtk4/files/patch-gtk4-x11-darwin-1.diff | 10 +
gnome/gtk4/files/patch-gtk4-x11-darwin-2.diff | 352 ++++++++++++++++++++++++++
gnome/gtk4/files/patch-gtk4-x11-darwin-3.diff | 74 ++++++
4 files changed, 441 insertions(+), 18 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gtk4/Portfile b/gnome/gtk4/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index a9d5133bdd5..d850a2e8038 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/gnome/gtk4/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gtk4/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -136,7 +136,7 @@ variant quartz conflicts x11 {
</span> archive_sites
known_fail yes
pre-fetch {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- ui_error "${name} is not supported on this os version at present."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_error "${name} +quartz is not supported on this os version at present."
</span> return -code error {unsupported platform}
}
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -147,29 +147,16 @@ variant x11 conflicts quartz {
</span> require_active_variants path:lib/pkgconfig/cairo.pc:cairo x11
require_active_variants path:lib/pkgconfig/pango.pc:pango x11
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-gtk4-x11-darwin-1.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch-gtk4-x11-darwin-2.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch-gtk4-x11-darwin-3.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> depends_lib-append port:libxkbcommon-x11 \
port:xorg-libXrandr \
port:xorg-libXcursor \
port:xorg-libXinerama
configure.args-append -Dx11-backend=true -Dmacos-backend=false
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # the x11 variant needs EGL support added to mesa and libepoxy
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # and even then the performance is well below the quartz variant
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # so keep it disabled until it can be fixed
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {${os.platform} eq "darwin"} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_build
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_lib
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_run
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- archive_sites
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- known_fail yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- pre-fetch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ui_error "${name} is not supported with the +x11 variant at present."
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ui_error "Please use the +quartz variant instead"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return -code error {unsupported platform}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span> }
if {![variant_isset quartz]} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gtk4/files/patch-gtk4-x11-darwin-1.diff b/gnome/gtk4/files/patch-gtk4-x11-darwin-1.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..1c52d1ff158
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gtk4/files/patch-gtk4-x11-darwin-1.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- ./gdk/x11/meson.build.orig 2022-08-24 15:08:38.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ./gdk/x11/meson.build 2022-08-24 15:10:26.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8,7 +8,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 'gdkdevicemanager-x11.c',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 'gdkdevicemanager-xi2.c',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 'gdkdisplay-x11.c',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- 'gdkglcontext-egl.c',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 'gdkglcontext-glx.c',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 'gdkglcontext-x11.c',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 'gdkkeys-x11.c',
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gtk4/files/patch-gtk4-x11-darwin-2.diff b/gnome/gtk4/files/patch-gtk4-x11-darwin-2.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..45e36d20004
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gtk4/files/patch-gtk4-x11-darwin-2.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,352 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- ./gdk/x11/gdkdisplay-x11.c.orig 2022-08-24 15:17:04.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ./gdk/x11/gdkdisplay-x11.c 2022-08-24 15:23:11.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,6 +1,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* GDK - The GIMP Drawing Kit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * gdkdisplay-x11.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Copyright 2001 Sun Microsystems Inc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Copyright (C) 2004 Nokia Corporation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -56,8 +56,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <errno.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <unistd.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include <epoxy/egl.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <X11/Xatom.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <X11/Xlibint.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -895,7 +893,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (surface &&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if (surface &&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xevent->xconfigure.event == xevent->xconfigure.window)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int x, y;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1467,7 +1465,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- /* initialize the display's screens */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ /* initialize the display's screens */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_x11->screen = _gdk_x11_screen_new (display, DefaultScreen (display_x11->xdisplay));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* If GL is available we want to pick better default/rgba visuals,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1484,8 +1482,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef HAVE_XFIXES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (XFixesQueryExtension (display_x11->xdisplay,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- &display_x11->xfixes_event_base,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if (XFixesQueryExtension (display_x11->xdisplay,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ &display_x11->xfixes_event_base,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ &ignore))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_x11->have_xfixes = TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1559,7 +1557,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* We don't yet know a valid time. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_x11->user_time = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef HAVE_XKB
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int xkb_major = XkbMajorVersion;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1568,13 +1566,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xkb_major = XkbMajorVersion;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xkb_minor = XkbMinorVersion;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (XkbQueryExtension (display_x11->xdisplay,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if (XkbQueryExtension (display_x11->xdisplay,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ NULL, &display_x11->xkb_event_type, NULL,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ &xkb_major, &xkb_minor))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Bool detectable_autorepeat_supported;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_x11->use_xkb = TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ XkbSelectEvents (display_x11->xdisplay,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1595,7 +1593,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GDK_NOTE (MISC, g_message ("Detectable autorepeat %s.",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ detectable_autorepeat_supported ?
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "supported" : "not supported"));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_x11->have_xkb_autorepeat = detectable_autorepeat_supported;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1607,7 +1605,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int major, minor;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int error_base, event_base;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (XSyncQueryExtension (display_x11->xdisplay,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ &event_base, &error_base) &&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ XSyncInitialize (display_x11->xdisplay,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1713,16 +1711,16 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ connection->fd = fd;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ connection->display = display;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ io_channel = g_io_channel_unix_new (fd);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ connection->source = g_io_create_watch (io_channel, G_IO_IN);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ g_source_set_callback (connection->source,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (GSourceFunc)process_internal_connection, connection, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ g_source_attach (connection->source, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ g_io_channel_unref (io_channel);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return connection;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1877,11 +1875,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gdk_x11_display_grab (GdkDisplay *display)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GdkX11Display *display_x11;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ g_return_if_fail (GDK_IS_DISPLAY (display));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_x11 = GDK_X11_DISPLAY (display);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (display_x11->grab_count == 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ XGrabServer (display_x11->xdisplay);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_x11->grab_count++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1898,12 +1896,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gdk_x11_display_ungrab (GdkDisplay *display)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GdkX11Display *display_x11;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ g_return_if_fail (GDK_IS_DISPLAY (display));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_x11 = GDK_X11_DISPLAY (display);;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ g_return_if_fail (display_x11->grab_count > 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_x11->grab_count--;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (display_x11->grab_count == 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2086,7 +2084,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Display *xdisplay = GDK_DISPLAY_XDISPLAY (display);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Window xroot_window = GDK_DISPLAY_XROOTWIN (display);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Atom type_atom;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Atom type_atom_begin;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Window xwindow;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2114,14 +2112,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ type_atom = gdk_x11_get_xatom_by_name_for_display (display, message_type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ type_atom_begin = gdk_x11_get_xatom_by_name_for_display (display, message_type_begin);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ XClientMessageEvent xclient;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const char *src;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const char *src_end;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ char *dest;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ char *dest_end;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ memset(&xclient, 0, sizeof (xclient));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xclient.type = ClientMessage;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xclient.message_type = type_atom_begin;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2131,12 +2129,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src = message;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src_end = message + strlen (message) + 1; /* +1 to include nul byte */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ while (src != src_end)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dest = &xclient.data.b[0];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dest_end = dest + 20;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ while (dest != dest_end &&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src != src_end)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2150,7 +2148,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *dest = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ++dest;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ XSendEvent (xdisplay,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xroot_window,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ False,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2175,7 +2173,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * skipped in the output.)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Sends a startup notification message of type @message_type to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- * @display.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * @display.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * This is a convenience function for use by code that implements the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * freedesktop startup notification specification. Applications should
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2266,7 +2264,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (display_x11->have_xfixes)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ atom = gdk_x11_get_xatom_by_name_for_display (display, selection);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- XFixesSelectSelectionInput (display_x11->xdisplay,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ XFixesSelectSelectionInput (display_x11->xdisplay,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_x11->leader_window,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ atom,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ XFixesSetSelectionOwnerNotifyMask |
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2301,7 +2299,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * @display: (type GdkX11Display): a `GdkDisplay`
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Gets the startup notification ID for a display.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Returns: the startup notification ID for @display
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const char *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2718,7 +2716,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ g_slist_free (displays);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gsize
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gdk_x11_display_get_max_request_size (GdkDisplay *display)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2728,7 +2726,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size = XExtendedMaxRequestSize (xdisplay);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (size <= 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size = XMaxRequestSize (xdisplay);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size = MIN (262144, size - 100);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return size;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2902,7 +2900,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ &template,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ &nvisuals);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ g_warn_if_fail (nvisuals == 1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return visinfo;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2916,33 +2914,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ visinfo->visual->blue_mask == 0x0000ff;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-static guint
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-gdk_x11_display_rate_egl_config (GdkDisplay *display,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- gpointer egl_display,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- gpointer config)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- GdkX11Display *self = GDK_X11_DISPLAY (display);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- XVisualInfo *visinfo;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- guint distance;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- int visualid;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (!eglGetConfigAttrib (egl_display, config, EGL_NATIVE_VISUAL_ID, &visualid))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return G_MAXUINT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- visinfo = gdk_x11_display_get_visual_info_for_visual (self, visualid);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (visinfo == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return G_MAXUINT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- distance = GDK_DISPLAY_CLASS (gdk_x11_display_parent_class)->rate_egl_config (display, egl_display, config);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (!visual_is_rgba (visinfo))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- distance += 0x100;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- XFree (visinfo);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return distance;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static gboolean
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gdk_x11_display_init_gl_backend (GdkX11Display *self,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Visual **out_visual,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2951,51 +2922,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GdkDisplay *display = GDK_DISPLAY (self);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Display *dpy = gdk_x11_display_get_xdisplay (GDK_DISPLAY (self));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- EGLDisplay egl_display;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ XVisualInfo *visinfo;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int visualid;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- /* No env vars set, do the regular GL initialization.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- * We try EGL first, but are very picky about what we accept.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- * If that fails, we try to go with GLX instead.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- * And if that also fails, we try EGL again, but this time accept anything.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- * The idea here is that EGL is the preferred method going forward, but GLX is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- * the tried and tested method that we know works. So if we detect issues with
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- * EGL, we want to avoid using it in favor of GLX.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (!gdk_display_init_egl (display, EGL_PLATFORM_X11_KHR, dpy, FALSE, error))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_clear_error (error);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (gdk_x11_display_init_glx (self, out_visual, out_depth, error))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_clear_error (error);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (!gdk_display_init_egl (display, EGL_PLATFORM_X11_KHR, dpy, TRUE, error))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return FALSE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (!eglGetConfigAttrib (gdk_display_get_egl_display (display),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- gdk_display_get_egl_config (display),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- EGL_NATIVE_VISUAL_ID,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- &visualid))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- /* We guarantee this when rating configs */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_assert_not_reached ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- visinfo = gdk_x11_display_get_visual_info_for_visual (self, visualid);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_assert (visinfo);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- *out_visual = visinfo->visual;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- *out_depth = visinfo->depth;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- egl_display = gdk_display_get_egl_display (display);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- self->egl_version = epoxy_egl_version (egl_display);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static GdkGLContext *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3011,8 +2945,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (self->glx_config != NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return g_object_new (GDK_TYPE_X11_GL_CONTEXT_GLX, "surface", self->leader_gdk_surface, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- else if (gdk_display_get_egl_display (display))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return g_object_new (GDK_TYPE_X11_GL_CONTEXT_EGL, "surface", self->leader_gdk_surface, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ g_return_val_if_reached (NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3048,7 +2980,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_class->get_keymap = gdk_x11_display_get_keymap;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_class->init_gl = gdk_x11_display_init_gl;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- display_class->rate_egl_config = gdk_x11_display_rate_egl_config;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ display_class->get_default_seat = gdk_x11_display_get_default_seat;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gtk4/files/patch-gtk4-x11-darwin-3.diff b/gnome/gtk4/files/patch-gtk4-x11-darwin-3.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..a381ee9a101
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gtk4/files/patch-gtk4-x11-darwin-3.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,74 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- ./gtk/inspector/general.c.orig 2022-08-24 15:26:58.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ./gtk/inspector/general.c 2022-08-24 15:29:41.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -40,7 +40,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef GDK_WINDOWING_X11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "x11/gdkx.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <epoxy/glx.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include <epoxy/egl.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef GDK_WINDOWING_WIN32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -289,37 +288,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(GDK_WINDOWING_WAYLAND) || defined (GDK_WINDOWING_X11) || (defined (GDK_WINDOWING_WIN32) && defined(GDK_WIN32_ENABLE_EGL))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-static void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-append_egl_extension_row (GtkInspectorGeneral *gen,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- EGLDisplay dpy,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- const char *ext)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- add_check_row (gen, GTK_LIST_BOX (gen->gl_box), ext, epoxy_has_egl_extension (dpy, ext), 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-static EGLDisplay
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-get_egl_display (GdkDisplay *display)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ifdef GDK_WINDOWING_WAYLAND
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (GDK_IS_WAYLAND_DISPLAY (display))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return gdk_wayland_display_get_egl_display (display);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ifdef GDK_WINDOWING_X11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (GDK_IS_X11_DISPLAY (display))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return gdk_x11_display_get_egl_display (display);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ifdef GDK_WINDOWING_WIN32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (GDK_IS_WIN32_DISPLAY (display))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return gdk_win32_display_get_egl_display (display);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ init_gl (GtkInspectorGeneral *gen)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -341,25 +309,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(GDK_WINDOWING_X11) || defined(GDK_WINDOWING_WAYLAND) || (defined(GDK_WINDOWING_WIN32) && defined(GDK_WIN32_ENABLE_EGL))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- EGLDisplay egl_display = get_egl_display (gen->display);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (egl_display)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- char *version;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- version = g_strconcat ("EGL ", eglQueryString (egl_display, EGL_VERSION), NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- gtk_label_set_text (GTK_LABEL (gen->gl_version), version);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_free (version);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- gtk_label_set_text (GTK_LABEL (gen->gl_vendor), eglQueryString (egl_display, EGL_VENDOR));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- append_egl_extension_row (gen, egl_display, "EGL_KHR_create_context");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- append_egl_extension_row (gen, egl_display, "EGL_EXT_buffer_age");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- append_egl_extension_row (gen, egl_display, "EGL_EXT_swap_buffers_with_damage");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- append_egl_extension_row (gen, egl_display, "EGL_KHR_surfaceless_context");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef GDK_WINDOWING_X11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (GDK_IS_X11_DISPLAY (gen->display))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span></pre><pre style='margin:0'>
</pre>